Thu, Dec 4, 2025

Missed slots - 2025-12-04

Analysis of missed slots on Ethereum mainnet.

A missed slot is a slot where the assigned proposer failed to produce a block. The chain skips these slots and continues. Typical miss rate is ~0.3%.

Definition: slot exists in proposer_duty AND no block exists in canonical_beacon_block

Show code
display_sql("block_production_timeline", target_date)
View query
WITH
-- Base slots using proposer duty as the source of truth
slots AS (
    SELECT DISTINCT
        slot,
        slot_start_date_time,
        proposer_validator_index
    FROM canonical_beacon_proposer_duty
    WHERE meta_network_name = 'mainnet'
      AND slot_start_date_time >= '2025-12-04' AND slot_start_date_time < '2025-12-04'::date + INTERVAL 1 DAY
),

-- Proposer entity mapping
proposer_entity AS (
    SELECT
        index,
        entity
    FROM ethseer_validator_entity
    WHERE meta_network_name = 'mainnet'
),

-- Blob count per slot
blob_count AS (
    SELECT
        slot,
        uniq(blob_index) AS blob_count
    FROM canonical_beacon_blob_sidecar
    WHERE meta_network_name = 'mainnet'
      AND slot_start_date_time >= '2025-12-04' AND slot_start_date_time < '2025-12-04'::date + INTERVAL 1 DAY
    GROUP BY slot
),

-- Canonical block hash (to verify MEV payload was actually used)
canonical_block AS (
    SELECT
        slot,
        execution_payload_block_hash
    FROM canonical_beacon_block
    WHERE meta_network_name = 'mainnet'
      AND slot_start_date_time >= '2025-12-04' AND slot_start_date_time < '2025-12-04'::date + INTERVAL 1 DAY
),

-- MEV bid timing using timestamp_ms
mev_bids AS (
    SELECT
        slot,
        slot_start_date_time,
        min(timestamp_ms) AS first_bid_timestamp_ms,
        max(timestamp_ms) AS last_bid_timestamp_ms
    FROM mev_relay_bid_trace
    WHERE meta_network_name = 'mainnet'
      AND slot_start_date_time >= '2025-12-04' AND slot_start_date_time < '2025-12-04'::date + INTERVAL 1 DAY
    GROUP BY slot, slot_start_date_time
),

-- MEV payload delivery - join canonical block with delivered payloads
-- Note: Use is_mev flag because ClickHouse LEFT JOIN returns 0 (not NULL) for non-matching rows
-- Get value from proposer_payload_delivered (not bid_trace, which may not have the winning block)
mev_payload AS (
    SELECT
        cb.slot,
        cb.execution_payload_block_hash AS winning_block_hash,
        1 AS is_mev,
        max(pd.value) AS winning_bid_value,
        groupArray(DISTINCT pd.relay_name) AS relay_names,
        any(pd.builder_pubkey) AS winning_builder
    FROM canonical_block cb
    GLOBAL INNER JOIN mev_relay_proposer_payload_delivered pd
        ON cb.slot = pd.slot AND cb.execution_payload_block_hash = pd.block_hash
    WHERE pd.meta_network_name = 'mainnet'
      AND slot_start_date_time >= '2025-12-04' AND slot_start_date_time < '2025-12-04'::date + INTERVAL 1 DAY
    GROUP BY cb.slot, cb.execution_payload_block_hash
),

-- Winning bid timing from bid_trace (may not exist for all MEV blocks)
winning_bid AS (
    SELECT
        bt.slot,
        bt.slot_start_date_time,
        argMin(bt.timestamp_ms, bt.event_date_time) AS winning_bid_timestamp_ms
    FROM mev_relay_bid_trace bt
    GLOBAL INNER JOIN mev_payload mp ON bt.slot = mp.slot AND bt.block_hash = mp.winning_block_hash
    WHERE bt.meta_network_name = 'mainnet'
      AND slot_start_date_time >= '2025-12-04' AND slot_start_date_time < '2025-12-04'::date + INTERVAL 1 DAY
    GROUP BY bt.slot, bt.slot_start_date_time
),

-- Block gossip timing with spread
block_gossip AS (
    SELECT
        slot,
        min(event_date_time) AS block_first_seen,
        max(event_date_time) AS block_last_seen
    FROM libp2p_gossipsub_beacon_block
    WHERE meta_network_name = 'mainnet'
      AND slot_start_date_time >= '2025-12-04' AND slot_start_date_time < '2025-12-04'::date + INTERVAL 1 DAY
    GROUP BY slot
),

-- Column arrival timing: first arrival per column, then min/max of those
column_gossip AS (
    SELECT
        slot,
        min(first_seen) AS first_column_first_seen,
        max(first_seen) AS last_column_first_seen
    FROM (
        SELECT
            slot,
            column_index,
            min(event_date_time) AS first_seen
        FROM libp2p_gossipsub_data_column_sidecar
        WHERE meta_network_name = 'mainnet'
          AND slot_start_date_time >= '2025-12-04' AND slot_start_date_time < '2025-12-04'::date + INTERVAL 1 DAY
          AND event_date_time > '1970-01-01 00:00:01'
        GROUP BY slot, column_index
    )
    GROUP BY slot
)

SELECT
    s.slot AS slot,
    s.slot_start_date_time AS slot_start_date_time,
    pe.entity AS proposer_entity,

    -- Blob count
    coalesce(bc.blob_count, 0) AS blob_count,

    -- MEV bid timing (absolute and relative to slot start)
    fromUnixTimestamp64Milli(mb.first_bid_timestamp_ms) AS first_bid_at,
    mb.first_bid_timestamp_ms - toInt64(toUnixTimestamp(mb.slot_start_date_time)) * 1000 AS first_bid_ms,
    fromUnixTimestamp64Milli(mb.last_bid_timestamp_ms) AS last_bid_at,
    mb.last_bid_timestamp_ms - toInt64(toUnixTimestamp(mb.slot_start_date_time)) * 1000 AS last_bid_ms,

    -- Winning bid timing (from bid_trace, may be NULL if block hash not in bid_trace)
    if(wb.slot != 0, fromUnixTimestamp64Milli(wb.winning_bid_timestamp_ms), NULL) AS winning_bid_at,
    if(wb.slot != 0, wb.winning_bid_timestamp_ms - toInt64(toUnixTimestamp(s.slot_start_date_time)) * 1000, NULL) AS winning_bid_ms,

    -- MEV payload info (from proposer_payload_delivered, always present for MEV blocks)
    if(mp.is_mev = 1, mp.winning_bid_value, NULL) AS winning_bid_value,
    if(mp.is_mev = 1, mp.relay_names, []) AS winning_relays,
    if(mp.is_mev = 1, mp.winning_builder, NULL) AS winning_builder,

    -- Block gossip timing with spread
    bg.block_first_seen,
    dateDiff('millisecond', s.slot_start_date_time, bg.block_first_seen) AS block_first_seen_ms,
    bg.block_last_seen,
    dateDiff('millisecond', s.slot_start_date_time, bg.block_last_seen) AS block_last_seen_ms,
    dateDiff('millisecond', bg.block_first_seen, bg.block_last_seen) AS block_spread_ms,

    -- Column arrival timing (NULL when no blobs)
    if(coalesce(bc.blob_count, 0) = 0, NULL, cg.first_column_first_seen) AS first_column_first_seen,
    if(coalesce(bc.blob_count, 0) = 0, NULL, dateDiff('millisecond', s.slot_start_date_time, cg.first_column_first_seen)) AS first_column_first_seen_ms,
    if(coalesce(bc.blob_count, 0) = 0, NULL, cg.last_column_first_seen) AS last_column_first_seen,
    if(coalesce(bc.blob_count, 0) = 0, NULL, dateDiff('millisecond', s.slot_start_date_time, cg.last_column_first_seen)) AS last_column_first_seen_ms,
    if(coalesce(bc.blob_count, 0) = 0, NULL, dateDiff('millisecond', cg.first_column_first_seen, cg.last_column_first_seen)) AS column_spread_ms

FROM slots s
GLOBAL LEFT JOIN proposer_entity pe ON s.proposer_validator_index = pe.index
GLOBAL LEFT JOIN blob_count bc ON s.slot = bc.slot
GLOBAL LEFT JOIN mev_bids mb ON s.slot = mb.slot
GLOBAL LEFT JOIN mev_payload mp ON s.slot = mp.slot
GLOBAL LEFT JOIN winning_bid wb ON s.slot = wb.slot
GLOBAL LEFT JOIN block_gossip bg ON s.slot = bg.slot
GLOBAL LEFT JOIN column_gossip cg ON s.slot = cg.slot

ORDER BY s.slot DESC
Show code
df = load_parquet("block_production_timeline", target_date)

# Identify missed slots: ClickHouse LEFT JOIN returns epoch date (1970-01-01) instead of NULL
# for non-matching rows, so we detect missed slots by checking for the epoch timestamp
epoch = pd.Timestamp("1970-01-01")
df["is_missed"] = df["block_first_seen"] == epoch

total_slots = len(df)
missed_slots = df["is_missed"].sum()
produced_slots = total_slots - missed_slots
miss_rate = missed_slots / total_slots * 100

print(f"Total slots: {total_slots:,}")
print(f"Blocks produced: {produced_slots:,} ({produced_slots/total_slots*100:.2f}%)")
print(f"Missed slots: {missed_slots:,} ({miss_rate:.2f}%)")
Total slots: 7,200
Blocks produced: 6,890 (95.69%)
Missed slots: 310 (4.31%)

Missed slots by proposer entityΒΆ

Which staking entities had the most missed slots? Note that larger entities have more assigned slots, so absolute counts don't reflect performance.

Show code
# Missed slots by entity
df_missed = df[df["is_missed"]].copy()

if len(df_missed) > 0:
    # Fill empty entities
    df_missed["proposer_entity"] = df_missed["proposer_entity"].fillna("unknown").replace("", "unknown")
    
    entity_misses = df_missed.groupby("proposer_entity").size().reset_index(name="missed_count")
    entity_misses = entity_misses.sort_values("missed_count", ascending=True)
    
    fig = go.Figure()
    fig.add_trace(go.Bar(
        y=entity_misses["proposer_entity"],
        x=entity_misses["missed_count"],
        orientation="h",
        marker_color="#e74c3c",
        text=entity_misses["missed_count"],
        textposition="outside",
    ))
    fig.update_layout(
        margin=dict(l=150, r=50, t=30, b=60),
        xaxis=dict(title="Missed slots"),
        yaxis=dict(title=""),
        height=max(300, len(entity_misses) * 25 + 100),
    )
    fig.show(config={"responsive": True})
else:
    print("No missed slots today.")

Entity miss ratesΒΆ

Normalized view: what percentage of each entity's assigned slots were missed? This accounts for entity size.

Show code
if len(df_missed) > 0:
    # Calculate miss rate per entity
    df["proposer_entity_clean"] = df["proposer_entity"].fillna("unknown").replace("", "unknown")
    
    entity_stats = df.groupby("proposer_entity_clean").agg(
        total_slots=("slot", "count"),
        missed_slots=("is_missed", "sum")
    ).reset_index()
    entity_stats["miss_rate"] = entity_stats["missed_slots"] / entity_stats["total_slots"] * 100
    
    # Only show entities with at least 1 missed slot
    entity_stats = entity_stats[entity_stats["missed_slots"] > 0]
    entity_stats = entity_stats.sort_values("miss_rate", ascending=True)
    
    # Color by miss rate
    fig = go.Figure()
    fig.add_trace(go.Bar(
        y=entity_stats["proposer_entity_clean"],
        x=entity_stats["miss_rate"],
        orientation="h",
        marker_color=entity_stats["miss_rate"],
        marker_colorscale="YlOrRd",
        text=entity_stats.apply(lambda r: f"{r['miss_rate']:.1f}% ({int(r['missed_slots'])}/{int(r['total_slots'])})", axis=1),
        textposition="outside",
        hovertemplate="<b>%{y}</b><br>Miss rate: %{x:.2f}%<extra></extra>",
    ))
    fig.update_layout(
        margin=dict(l=150, r=100, t=30, b=60),
        xaxis=dict(title="Miss rate (%)", range=[0, max(entity_stats["miss_rate"]) * 1.3]),
        yaxis=dict(title=""),
        height=max(300, len(entity_stats) * 25 + 100),
    )
    fig.show(config={"responsive": True})

Missed slots by time of dayΒΆ

Are there patterns in when slots are missed? Spikes could indicate coordinated issues or network events.

Show code
if len(df_missed) > 0:
    # Extract hour from slot time
    df_missed["hour"] = pd.to_datetime(df_missed["slot_start_date_time"]).dt.hour
    
    hourly_misses = df_missed.groupby("hour").size().reset_index(name="missed_count")
    
    # Fill in missing hours with 0
    all_hours = pd.DataFrame({"hour": range(24)})
    hourly_misses = all_hours.merge(hourly_misses, on="hour", how="left").fillna(0)
    hourly_misses["missed_count"] = hourly_misses["missed_count"].astype(int)
    
    fig = go.Figure()
    fig.add_trace(go.Bar(
        x=hourly_misses["hour"],
        y=hourly_misses["missed_count"],
        marker_color="#e74c3c",
    ))
    fig.update_layout(
        margin=dict(l=60, r=30, t=30, b=60),
        xaxis=dict(title="Hour (UTC)", tickmode="linear", dtick=2),
        yaxis=dict(title="Missed slots"),
        height=350,
    )
    fig.show(config={"responsive": True})

Missed slots timelineΒΆ

When did each missed slot occur? Clusters may indicate network-wide issues.

Show code
if len(df_missed) > 0:
    df_plot = df_missed.copy()
    df_plot["time"] = pd.to_datetime(df_plot["slot_start_date_time"])
    
    fig = go.Figure()
    fig.add_trace(go.Scatter(
        x=df_plot["time"],
        y=[1] * len(df_plot),  # All at same y level
        mode="markers",
        marker=dict(size=10, color="#e74c3c", symbol="x"),
        customdata=np.column_stack([df_plot["slot"], df_plot["proposer_entity"]]),
        hovertemplate="<b>Slot %{customdata[0]}</b><br>Time: %{x}<br>Entity: %{customdata[1]}<extra></extra>",
    ))
    fig.update_layout(
        margin=dict(l=60, r=30, t=30, b=60),
        xaxis=dict(title="Time (UTC)", tickformat="%H:%M"),
        yaxis=dict(visible=False),
        height=200,
    )
    fig.show(config={"responsive": True})

All missed slotsΒΆ

Complete list of missed slots with proposer details.

Show code
if len(df_missed) > 0:
    df_table = df_missed[["slot", "slot_start_date_time", "proposer_entity"]].copy()
    df_table["proposer_entity"] = df_table["proposer_entity"].fillna("unknown").replace("", "unknown")
    df_table["time"] = pd.to_datetime(df_table["slot_start_date_time"]).dt.strftime("%H:%M:%S")
    df_table = df_table.sort_values("slot")
    
    # Create Lab links
    df_table["lab_link"] = df_table["slot"].apply(
        lambda s: f'<a href="https://lab.ethpandaops.io/ethereum/slots/{s}" target="_blank">View</a>'
    )
    
    # Build HTML table
    html = '''
    <style>
    .missed-table { border-collapse: collapse; width: 100%; font-family: monospace; font-size: 13px; }
    .missed-table th { background: #c0392b; color: white; padding: 8px 12px; text-align: left; position: sticky; top: 0; }
    .missed-table td { padding: 6px 12px; border-bottom: 1px solid #eee; }
    .missed-table tr:hover { background: #ffebee; }
    .missed-table a { color: #1976d2; text-decoration: none; }
    .missed-table a:hover { text-decoration: underline; }
    .table-container { max-height: 500px; overflow-y: auto; }
    </style>
    <div class="table-container">
    <table class="missed-table">
    <thead>
    <tr><th>Slot</th><th>Time (UTC)</th><th>Proposer entity</th><th>Lab</th></tr>
    </thead>
    <tbody>
    '''
    
    for _, row in df_table.iterrows():
        html += f'''<tr>
            <td>{row["slot"]}</td>
            <td>{row["time"]}</td>
            <td>{row["proposer_entity"]}</td>
            <td>{row["lab_link"]}</td>
        </tr>'''
    
    html += '</tbody></table></div>'
    display(HTML(html))
    print(f"\nTotal missed slots: {len(df_table):,}")
else:
    print("No missed slots today.")
SlotTime (UTC)Proposer entityLab
13165229 00:06:11 ether.fi View
13165251 00:10:35 abyss_finance View
13165280 00:16:23 unknown View
13165296 00:19:35 whale_0x6395 View
13165331 00:26:35 solo_stakers View
13165363 00:32:59 unknown View
13165412 00:42:47 solo_stakers View
13165492 00:58:47 unknown View
13165581 01:16:35 binance View
13165585 01:17:23 blockscape_lido View
13165646 01:29:35 binance View
13165658 01:31:59 solo_stakers View
13165701 01:40:35 bridgetower_lido View
13165717 01:43:47 unknown View
13165726 01:45:35 unknown View
13165732 01:46:47 whale_0x1435 View
13165746 01:49:35 unknown View
13165832 02:06:47 rocketpool View
13165846 02:09:35 solo_stakers View
13165998 02:39:59 kucoin View
13166004 02:41:11 unknown View
13166039 02:48:11 figment View
13166049 02:50:11 blockdaemon View
13166050 02:50:23 okex View
13166055 02:51:23 solo_stakers View
13166083 02:56:59 xhash View
13166084 02:57:11 whale_0xefa0 View
13166099 03:00:11 coinbase View
13166103 03:00:59 rocketpool View
13166106 03:01:35 avado View
13166108 03:01:59 whale_0x05d6 View
13166109 03:02:11 upbit View
13166115 03:03:23 okex View
13166120 03:04:23 solo_stakers View
13166134 03:07:11 unknown View
13166135 03:07:23 ether.fi View
13166140 03:08:23 hashquark_lido View
13166146 03:09:35 ether.fi View
13166147 03:09:47 hashquark_lido View
13166149 03:10:11 ether.fi View
13166154 03:11:11 csm_operator304_lido View
13166159 03:12:11 solo_stakers View
13166161 03:12:35 binance View
13166171 03:14:35 solo_stakers View
13166176 03:15:35 whale_0x1dd0 View
13166184 03:17:11 coinbase View
13166189 03:18:11 whale_0x5628 View
13166197 03:19:47 whale_0x9f1d View
13166200 03:20:23 solo_stakers View
13166202 03:20:47 solo_stakers View
13166209 03:22:11 whale_0xd951 View
13166210 03:22:23 stader View
13166215 03:23:23 piz_42 View
13166219 03:24:11 unknown View
13166224 03:25:11 blockdaemon View
13166225 03:25:23 coinbase View
13166230 03:26:23 coinbase View
13166231 03:26:35 solo_stakers View
13166232 03:26:47 okex View
13166237 03:27:47 abyss_finance View
13166244 03:29:11 revolut View
13166248 03:29:59 blockdaemon_lido View
13166251 03:30:35 ether.fi View
13166252 03:30:47 okex View
13166253 03:30:59 solo_stakers View
13166254 03:31:11 rockx_lido View
13166256 03:31:35 okex View
13166257 03:31:47 csm_operator304_lido View
13166258 03:31:59 blockdaemon View
13166260 03:32:23 lido View
13166265 03:33:23 kucoin View
13166269 03:34:11 solo_stakers View
13166282 03:36:47 whale_0xd9db View
13166286 03:37:35 whale_0x9881 View
13166288 03:37:59 ebunker_lido View
13166295 03:39:23 unknown View
13166296 03:39:35 kucoin View
13166300 03:40:23 coinbase View
13166301 03:40:35 blockdaemon View
13166305 03:41:23 solo_stakers View
13166308 03:41:59 kiln View
13166313 03:42:59 staked.us View
13166318 03:43:59 solo_stakers View
13166320 03:44:23 simplystaking_lido View
13166325 03:45:23 ether.fi View
13166328 03:45:59 solo_stakers View
13166330 03:46:23 solo_stakers View
13166338 03:47:59 coinbase View
13166340 03:48:23 piertwo View
13166342 03:48:47 solo_stakers View
13166345 03:49:23 infstones_lido View
13166346 03:49:35 stakefish View
13166347 03:49:47 whale_0x9f1d View
13166348 03:49:59 staked.us View
13166353 03:50:59 blockdaemon_lido View
13166359 03:52:11 coinbase View
13166361 03:52:35 revolut View
13166364 03:53:11 solo_stakers View
13166376 03:55:35 upbit View
13166377 03:55:47 whale_0xad1d View
13166384 03:57:11 solo_stakers View
13166392 03:58:47 okex View
13166395 03:59:23 coinbase View
13166398 03:59:59 blockdaemon View
13166403 04:00:59 solo_stakers View
13166411 04:02:35 solo_stakers View
13166415 04:03:23 coinbase View
13166420 04:04:23 coinbase View
13166422 04:04:47 unknown View
13166424 04:05:11 upbit View
13166425 04:05:23 upbit View
13166427 04:05:47 coinbase View
13166428 04:05:59 wexexchange View
13166432 04:06:47 upbit View
13166433 04:06:59 hashquark_lido View
13166443 04:08:59 solo_stakers View
13166447 04:09:47 stakefish View
13166451 04:10:35 blockdaemon View
13166452 04:10:47 coinbase View
13166457 04:11:47 solo_stakers View
13166461 04:12:35 unknown View
13166462 04:12:47 rocketpool View
13166477 04:15:47 kraken View
13166479 04:16:11 upbit View
13166480 04:16:23 frax_finance View
13166486 04:17:35 csm_operator304_lido View
13166487 04:17:47 solo_stakers View
13166490 04:18:23 blockdaemon View
13166497 04:19:47 rocketpool View
13166499 04:20:11 liquid_collective View
13166501 04:20:35 unknown View
13166505 04:21:23 xhash View
13166508 04:21:59 renzo_protocol View
13166509 04:22:11 whale_0x3fb6 View
13166521 04:24:35 solo_stakers View
13166523 04:24:59 upbit View
13166527 04:25:47 blockdaemon View
13166534 04:27:11 staked.us View
13166542 04:28:47 binance View
13166546 04:29:35 blockdaemon View
13166549 04:30:11 solo_stakers View
13166551 04:30:35 lido View
13166553 04:30:59 kiln View
13166554 04:31:11 staked.us View
13166563 04:32:59 upbit View
13166570 04:34:23 solo_stakers View
13166571 04:34:35 solo_stakers View
13166574 04:35:11 prysmaticlabs_lido View
13166586 04:37:35 blockdaemon View
13166614 04:43:11 ether.fi View
13166617 04:43:47 whale_0x27d7 View
13166618 04:43:59 upbit View
13166619 04:44:11 solo_stakers View
13166623 04:44:59 upbit View
13166626 04:45:35 solo_stakers View
13166630 04:46:23 solo_stakers View
13166644 04:49:11 coinbase View
13166648 04:49:59 coinbase View
13166653 04:50:59 ether.fi View
13166657 04:51:47 unknown View
13166668 04:53:59 solo_stakers View
13166669 04:54:11 unknown View
13166671 04:54:35 rocketpool View
13166676 04:55:35 unknown View
13166678 04:55:59 gate.io View
13166693 04:58:59 solo_stakers View
13166700 05:00:23 whale_0x9f1d View
13166720 05:04:23 coinbase View
13166741 05:08:35 bitget View
13166750 05:10:23 solo_stakers View
13166755 05:11:23 figment View
13166778 05:15:59 whale_0x6395 View
13166784 05:17:11 solo_stakers View
13166789 05:18:11 solo_stakers View
13166812 05:22:47 solo_stakers View
13166824 05:25:11 solo_stakers View
13166827 05:25:47 piz_42 View
13166831 05:26:35 rocketpool View
13166838 05:27:59 blockdaemon View
13166898 05:39:59 abyss_finance View
13166911 05:42:35 blockdaemon View
13166924 05:45:11 whale_0x6395 View
13166933 05:46:59 whale_0x6395 View
13166972 05:54:47 blockdaemon View
13166991 05:58:35 solo_stakers View
13166993 05:58:59 solo_stakers View
13167007 06:01:47 liquid_collective View
13167046 06:09:35 piertwo View
13167076 06:15:35 blockscape_lido View
13167085 06:17:23 upbit View
13167105 06:21:23 rocketpool View
13167122 06:24:47 solo_stakers View
13167158 06:31:59 whale_0x6395 View
13167161 06:32:35 blockdaemon View
13167163 06:32:59 solo_stakers View
13167196 06:39:35 wexexchange View
13167197 06:39:47 rocketpool View
13167211 06:42:35 blockdaemon View
13167220 06:44:23 liquid_collective View
13167295 06:59:23 abyss_finance View
13167313 07:02:59 unknown View
13167322 07:04:47 blockdaemon View
13167337 07:07:47 blockdaemon View
13167338 07:07:59 blockdaemon_lido View
13167339 07:08:11 solo_stakers View
13167347 07:09:47 solo_stakers View
13167358 07:11:59 rocketpool View
13167381 07:16:35 blockdaemon View
13167432 07:26:47 whale_0x5628 View
13167439 07:28:11 blockdaemon View
13167456 07:31:35 blockdaemon_lido View
13167457 07:31:47 unknown View
13167469 07:34:11 solo_stakers View
13167494 07:39:11 blockdaemon View
13167561 07:52:35 blockdaemon View
13167566 07:53:35 liquid_collective View
13167597 07:59:47 solo_stakers View
13167624 08:05:11 blockdaemon View
13167646 08:09:35 ether.fi View
13167737 08:27:47 whale_0x6229 View
13167741 08:28:35 blockdaemon View
13167749 08:30:11 piz_42 View
13167757 08:31:47 unknown View
13167764 08:33:11 unknown View
13167773 08:34:59 unknown View
13167786 08:37:35 wexexchange View
13167807 08:41:47 solo_stakers View
13167819 08:44:11 rocketpool View
13167861 08:52:35 upbit View
13167862 08:52:47 upbit View
13167882 08:56:47 solo_stakers View
13167913 09:02:59 rocketpool View
13167917 09:03:47 whale_0xf463 View
13167927 09:05:47 whale_0x6395 View
13167966 09:13:35 stakin_lido View
13167976 09:15:35 blockdaemon View
13167993 09:18:59 rocketpool View
13168063 09:32:59 abyss_finance View
13168084 09:37:11 hashhub View
13168093 09:38:59 whale_0x6395 View
13168096 09:39:35 blockscape_lido View
13168119 09:44:11 whale_0xf463 View
13168122 09:44:47 coinbase View
13168171 09:54:35 solo_stakers View
13168207 10:01:47 rocketpool View
13168215 10:03:23 ether.fi View
13168226 10:05:35 rocketpool View
13168304 10:21:11 coinbase View
13168355 10:31:23 whale_0xd31a View
13168438 10:47:59 whale_0xefa0 View
13168469 10:54:11 whale_0x6395 View
13168506 11:01:35 myetherwallet View
13168537 11:07:47 unknown View
13168653 11:30:59 kucoin View
13168738 11:47:59 unknown View
13168782 11:56:47 abyss_finance View
13168791 11:58:35 abyss_finance View
13168860 12:12:23 abyss_finance View
13168884 12:17:11 kraken View
13168991 12:38:35 coinbase View
13169036 12:47:35 whale_0x6a9c View
13169097 12:59:47 whale_0x4289 View
13169137 13:07:47 lido View
13169215 13:23:23 solo_stakers View
13169307 13:41:47 solo_stakers View
13169315 13:43:23 blockdaemon View
13169347 13:49:47 hashhub View
13169381 13:56:35 csm_operator207_lido View
13169508 14:21:59 staked.us View
13169547 14:29:47 rocketpool View
13169601 14:40:35 kucoin View
13169611 14:42:35 blockscape_lido View
13169622 14:44:47 solo_stakers View
13169739 15:08:11 whale_0x8e69 View
13169782 15:16:47 ether.fi View
13169924 15:45:11 kraken View
13169983 15:56:59 solo_stakers View
13170059 16:12:11 abyss_finance View
13170065 16:13:23 solo_stakers View
13170118 16:23:59 solo_stakers View
13170119 16:24:11 rocketpool View
13170222 16:44:47 rocketpool View
13170244 16:49:11 whale_0x6395 View
13170400 17:20:23 hashhub View
13170448 17:29:59 solo_stakers View
13170473 17:34:59 whale_0xe43c View
13170487 17:37:47 solo_stakers View
13170495 17:39:23 solo_stakers View
13170527 17:45:47 kraken View
13170537 17:47:47 whale_0x6395 View
13170562 17:52:47 hashhub View
13170579 17:56:11 solo_stakers View
13170801 18:40:35 whale_0xf4d1 View
13170884 18:57:11 whale_0x3e69 View
13170921 19:04:35 solo_stakers View
13170922 19:04:47 kraken View
13171004 19:21:11 solo_stakers View
13171020 19:24:23 hashhub View
13171401 20:40:35 solo_stakers View
13171417 20:43:47 solo_stakers View
13171483 20:56:59 solo_stakers View
13171688 21:37:59 kraken View
13171703 21:40:59 wexexchange View
13171811 22:02:35 whale_0x24d6 View
13172196 23:19:35 solo_stakers View
13172253 23:30:59 solo_stakers View
13172264 23:33:11 whale_0x24d6 View
13172275 23:35:23 solo_stakers View
13172319 23:44:11 solo_stakers View
13172342 23:48:47 whale_0x19d2 View
Total missed slots: 310