Missed attestation alerts that aren't noise
The problem with most missed-attestation alerts: they fire on every single miss. Relay delays, single missed heads, peering hiccups — your phone buzzes constantly, you start ignoring it, you miss the one that matters.
What Eyrium does differently: configurable streak threshold (1–10 consecutive misses before alert fires) plus head-only-miss suppression (filter out the misses where only the head vote was missed but target + source landed).
Cost: Pro ($7/mo) — needs Telegram or native push to deliver in real-time. Free tier gets email-only.
What is a missed attestation?
Every Ethereum validator is expected to make an attestation once per epoch (~6.4 minutes). An attestation is a vote on three things: the head of the chain, the target checkpoint, and the source checkpoint. Each component earns a separate reward.
A "missed attestation" is when one or more of those three votes don't get included on-chain within the inclusion window. The lost rewards are usually tiny per individual miss — fractions of a gwei — but a high enough miss rate signals that something is structurally wrong with your validator setup.
Why missed attestations happen (most of the time, it's not your validator)
Common causes, ordered by how often they're the real culprit:
- Relay delay. Your validator signed the attestation, but the relay network took too long to include it. This shows up as a "head-only miss" — your target and source votes landed but the head vote didn't make it into the on-time block. Your reward is barely affected.
- Peering issues. Your node lost connectivity to enough peers to either not see the head in time or not propagate your attestation in time.
- Hardware / I/O lag. Disk pressure, swap, network card under load. Validator client logs are slow because the machine is busy.
- Client crash or restart. Validator client was down for the slot.
- Chain reorgs. Less common, but reorgs can orphan attestations that were technically on-time.
- Misconfigured fee recipient or graffiti causing connection drops in some client/relay combos.
Notice what's not on this list: "you got hacked," "you're about to be slashed," or "you need to panic." Single missed attestations are the chain equivalent of a packet drop. They happen. The signal is in the rate.
The noise problem
Validator monitoring tools that alert on every missed attestation produce extraordinary alert volume. A solo home staker with 10 validators running for a month will see dozens of relay-delay head-only misses — easily one alert per day, sometimes more. Operators learn to mute the notifications. When the real problem hits (node down, client crashed, restart loop), they miss it.
The fix is filtering. Don't alert on noise.
How Eyrium's missed-attestation alerts work
Eyrium gives you two configurable filters that, used together, suppress the relay-delay false positives and only fire when something is actually wrong.
Filter 1: Streak threshold (min_streak)
- Integer, 1–10
- Default: 1 (fires on every miss — tune to 2 or 3 to suppress isolated noise)
- Configured per user (applies to every validator on your account, not per-validator)
- Configurable via Settings → Alert preferences → Missed attestation row → slider
- A streak threshold of 3 means: only fire an alert after your validator misses 3 consecutive attestations. Isolated misses get logged but don't notify.
Filter 2: Head-only-miss suppression (ignore_head_only_misses)
- Boolean, default
false - When
true, suppresses misses where only the head vote was missed but target + source landed - This is the relay-delay false-positive filter — head-only misses almost always reflect relay timing rather than your validator's health
Used together, a typical solo-staker setup is min_streak: 3, ignore_head_only_misses: true. That configuration eliminates the vast majority of the relay-delay noise without missing the structural issues you actually want to know about.
Per-alert payload includes:
- The epoch the miss occurred in
head_reward,target_reward,source_reward— what you actually earnedideal_head_reward,ideal_target_reward,ideal_source_reward— what you would have earned with a perfect attestation- The gwei delta — exactly how much income was lost
You see the gwei loss in every alert, so you can make informed calls about whether to investigate.
How it compares
| Eyrium | beaconcha.in | Rated Network | |
|---|---|---|---|
| Missed-attestation alert | ✓ | ✓ | ✗ (not a documented alerts product) |
| Configurable streak threshold | ✓ (1–10) | ✗ (no streak setting visible in their docs) | n/a |
| Head-only-miss suppression | ✓ | ✗ | n/a |
| Per-component reward breakdown in alert | ✓ | Partial | n/a |
| Channels | Email, Telegram, iOS/Android push | Email, webhook, push | n/a |
What to do if you're getting too many missed-attestation alerts
If your validator is genuinely missing attestations frequently — say, more than ~2% of attestations over a sustained period — work through this:
1. Check your client logs first. Most missed attestations have a clear cause in the validator or beacon client logs at the time of the miss. Don't guess; look.
2. Verify your peer count. Below ~30-50 peers on the beacon chain, attestation propagation degrades. Check what your client reports and compare against its target.
3. Check disk I/O. Validator clients are sensitive to disk latency. iostat or your platform's equivalent — if you see sustained high IOPS or queue depth, that's likely the cause.
4. Look at the time-of-day pattern. If misses cluster around backup jobs, log rotation, or other cron tasks, you've found it. Move the offending job, increase machine resources, or use I/O priority.
5. Try a different MEV relay. If your client is configured to use a slow relay and that relay frequently delays inclusion, your head votes will be late. Swap relays or use a multi-relay setup.
6. Update your validator client. Performance regressions and bug fixes ship constantly. If you're more than a minor version behind, upgrade.
If none of these change the rate, your hardware may be undersized for the validator count it's running.
FAQ
- How do I stop missed-attestation alerts from being noisy?
- Set a streak threshold of 2 or 3 and enable head-only-miss suppression. Combined, these filter out the vast majority of the relay-delay and single-miss noise while still alerting you when your validator is structurally failing.
- Does the streak threshold apply per-validator or globally?
- Globally — it applies to every validator on your account. The same is true for head-only-miss suppression.
- What's a head-only miss?
- A missed attestation where only the head vote didn't make it on-chain in the inclusion window, but the target and source votes did. This is almost always a relay-delay or block-timing issue rather than a validator problem. Your earned reward is barely below the ideal.
- Will I miss real issues if I set a high streak threshold?
- Probably not. A real validator-side problem — node down, client crashed, network unreachable — produces a consecutive streak of misses very quickly. By the time you've missed 3 in a row, the cause is likely structural and you want to know. Isolated single misses are usually relay noise.
- Do I get missed-attestation alerts on the free tier?
- Yes, but only via email and only for your 1 validator on free tier. To monitor more validators or to get Telegram and native push delivery, you need Pro ($7/mo).
- What's in the alert payload?
- The epoch, your actual head/target/source rewards, the ideal head/target/source rewards (what a perfect attestation would have earned), and the gwei delta — exactly what the miss cost you.
- Does Eyrium alert on missed proposals or sync-committee misses?
- Not yet — both are on our roadmap. Today we fire on missed attestations, balance drops, status changes (slashing, exit, withdrawal), and fee-recipient changes.
Stop getting paged for relay delays.
Set a streak threshold, enable head-only-miss suppression, and only get notified when your validator is actually broken. Pro is $7/mo with Telegram and native mobile push.
Get started →