CXO Relay Report

2026-08-13 → 2026-09-18 · 37 day(s) · generated 2026-09-18 13:00:11 UTC · source: metrics.jsonl.1, metrics.jsonl
Documents won
1165
70 FFA + 1095 reserved, 1396 sent
FFA win rate
24%
70 of 291 FFA
Revenue
$0.28
1.86 CXO
Gas spent
100.4660 POL
$0.02, 8.3898 POL on lost races
Net earnings
$0.26
revenue minus all gas
Wallet balance
990.095 POL
lowest seen 990.095

Earnings

DateWonFFAReservedCXORevenueGas (POL)Gas (USD)Net
2026-09-18241231.86$0.282.2217$0.02$0.26
2026-09-17487414.6250
2026-09-16430433.6378
2026-09-15494454.7104
2026-09-14548465.4090
2026-09-13111101.1158
2026-09-12120121.0855
2026-09-11332312.8155
2026-09-10412393.4860
2026-09-09422403.6786
2026-09-08390393.2543
2026-09-07495444.2007
2026-09-068080.8235
2026-09-05100100.8496
2026-09-04343313.0666
2026-09-03457384.0115
2026-09-02411403.2390
2026-09-01422403.8512
2026-08-31461452.4737
2026-08-30100100.8891
2026-08-299090.7776
2026-08-28170171.5506
2026-08-27280282.6425
2026-08-26454412.9161
2026-08-25493464.1456
2026-08-24494454.4942
2026-08-23100100.8985
2026-08-229090.6402
2026-08-21334292.9955
2026-08-20400403.4774
2026-08-19390392.6155
2026-08-18462444.0110
2026-08-17503474.2626
2026-08-169090.8565
2026-08-1511381.1987
2026-08-14311302.7182
2026-08-139090.8208
Total11657010951.86$0.28100.4660$0.02$0.26

Gas is 6% of revenue, and $0.01 of it was burned on lost races. Average $0.00 per won document. 1164 relay(s) carried no rates and are missing from the revenue; the --rewardUsd, --cxoPrice and --polPrice flags can fill them in.

Earnings over time

PeriodWonFFAReservedCXORevenueGas (POL)Gas (USD)Net
Today241231.86$0.282.2217$0.02$0.26
Yesterday487414.6250
Last 7 days241212201.86$0.2822.8052$0.02$0.26
Last 30 days970619091.86$0.2883.9826$0.02$0.26
All time11657010951.86$0.28100.4660$0.02$0.26

Days are your local calendar days. The 7 and 30 day rows are rolling windows, so they cover the same amount of history on any date.

Averages

MeasureValueBasis
Net per day with relays$0.0137 day(s) had at least one win
Net per won document$0.00revenue minus the gas it took, including lost races
Current run rate$0.04/daylast 7 days divided by 7, idle days included
Projected 30 days$1.11run rate held flat, not a forecast

Net earnings per day

$0.26$0.19$0.13$0.06$0.00 08-1308-1708-2108-2508-2909-0209-0609-1009-1409-18$0.26 avg $0.01

Liveness

MeasureValue
Heartbeats recorded46
Beats with no successful poll0
Last heartbeat2026-09-18T12:46:41.210Z (14 min ago)
Longest gap between heartbeats2 min ending 2026-09-18T12:06:41.151Z
Wallet balance, last / lowest990.0949 POL / 990.0949 POL

A gap much longer than the 60 s beat is downtime, measured from the log itself. Beats with no successful poll mean the process was alive but blind, which is the case a plain uptime check would miss.

How races were lost

Attribution failed on all 2 attempt(s), so this section has no data — it does not mean no races were lost. Last reason: bad response. A provider that rejects or throttles wide eth_getLogs queries is the usual cause.

Win rate by contention level

times_shownSentConfirmedRevertedWinSkipped as too contested
0 (reserved)110100%0
12020%0
80001
130001
150002
200001
580001
940001
960001
1060001
1500001
1900001
4020001

A bid breaks even at a win rate of roughly reverted-gas divided by reward, which is under a few percent at normal gas prices. Any bucket above that is worth contesting, so a non-zero skip count next to a viable win rate means --ffaMaxShown is discarding money.

Discovery

MeasureValue
Polls completed3388
Ticks dropped because a cycle overran0 (0%)
Fetch duration p50 / p9533 ms / 65 ms
Actual gap between polls p50 / p951001 ms / 1012 ms
Age of the freshest document when first seen, median235.2 s
Cache-Control
VaryCookie, Authorization, Accept-Language (1896×), Cookie, Authorization, Accept-Language, accept-encoding (1492×)
Cache statuscf-cache-status=DYNAMIC (3388×)
Estimate failures: real reverts / RPC problems6 / 0

No Age header seen, so there is no shared HTTP cache to phase-lock against; the 1-minute window is applied inside the application. If Vary names the rewardRecipient query parameter, the cache window belongs to this relayer alone and the request that triggers revalidation is the one that gets origin-fresh data.

Daily outcomes

ConfirmedReverted (lost race)Win rate labelled on the busiest and latest day
018365371 08-1308-1708-2108-2508-2909-0209-0609-1076%09-1483%09-18

Daily breakdown

DateSentConfirmedRevertedWinFFA winGas (POL)Wasted (POL)Submit p50Submit p95
2026-09-182924583%17%2.22170.22908 ms44 ms
2026-09-1758481083%41%4.62500.39879 ms45 ms
2026-09-165143884%0%3.63780.30659 ms44 ms
2026-09-1564491577%21%4.71040.58999 ms45 ms
2026-09-1471541776%32%5.40900.66288 ms44 ms
2026-09-131611569%17%1.11580.19989 ms43 ms
2026-09-121812667%0%1.08550.21748 ms43 ms
2026-09-113733489%33%2.81550.15639 ms44 ms
2026-09-104641589%29%3.48600.20658 ms45 ms
2026-09-094842688%25%3.67860.23318 ms47 ms
2026-09-084539687%0%3.25430.23748 ms46 ms
2026-09-075249394%63%4.20070.11948 ms45 ms
2026-09-06138562%0%0.82350.20058 ms44 ms
2026-09-051210283%0%0.84960.07848 ms45 ms
2026-09-043834489%43%3.06660.16058 ms44 ms
2026-09-035145588%54%4.01150.16328 ms45 ms
2026-09-024441393%25%3.23900.12078 ms44 ms
2026-09-015042784%20%3.85120.27558 ms45 ms
2026-08-3157461181%8%2.47370.31898 ms43 ms
2026-08-301310377%0%0.88910.11898 ms42 ms
2026-08-29119282%0%0.77760.07908 ms42 ms
2026-08-282917659%0%1.55060.23908 ms42 ms
2026-08-2741281268%0%2.64250.47778 ms43 ms
2026-08-265445883%33%2.91610.28078 ms44 ms
2026-08-255149296%60%4.14560.08138 ms43 ms
2026-08-245949983%31%4.49420.35788 ms43 ms
2026-08-231310377%0%0.89850.12068 ms42 ms
2026-08-22990100%0.64020.00007 ms41 ms
2026-08-213633392%57%2.99550.12267 ms42 ms
2026-08-205040980%0%3.47740.36348 ms42 ms
2026-08-1950391078%0%2.61550.31238 ms50 ms
2026-08-185246688%25%4.01100.23878 ms46 ms
2026-08-175450493%43%4.26260.16157 ms43 ms
2026-08-16139469%0%0.85650.16108 ms43 ms
2026-08-151411379%50%1.19870.11828 ms52 ms
2026-08-143531489%20%2.71820.16058 ms43 ms
2026-08-13129375%0%0.82080.12258 ms45 ms