4 of 4 live
OpenChainBenchOpenChainBench
All benchmarks
LiveAggregators004 · Updated May 4, 2026, 4:03 PM UTC

Token Metadata Coverage

Share of metadata fields populated for fresh-launch tokens (logo, description, twitter, website). Higher is better.

Field min · p50

24.9%

Lowest provider

Field median · p50

45.4%

Across 3 providers

Field max · p50

57.2%

Highest provider

Tail spread

2.5×

25.0% → 61.8%

Samples · 24h

889,800

3 providers

Field coverage · last 24 hours

017.1%34.2%51.4%68.5%−24h−18h−12h−6hnowMobula61.4%Jupiter24.9%Codex26.8%
  • Mobula61.4%
  • Jupiter24.9%
  • Codex26.8%

Provider ledger · sorted by p50

ProviderLatency aggregates24-hour rangeReliabilityTrend
Namep50p90p99MeanMinMaxΔ fieldSuccessn24h
01JupiterREST `/v6/tokens` (Solana)24.9%25.0%25.0%24.8%22.9%25.0%−41%100.00%243,167
02CodexGraphQL `token` query45.4%50.3%52.4%45.4%0.00000%53.9%+7%100.00%323,318
03MobulaREST `/token/details`57.2%60.8%61.8%56.6%51.3%62.3%+35%100.00%323,315
About this benchmark

We benchmark how complete each aggregator's token-metadata response is for freshly-launched tokens. The harness subscribes to Mobula Pulse V2 for new tokens on Solana, BNB Chain and Base, then asks each aggregator (Mobula, Codex, Jupiter where the chain is supported) for that token's metadata and records whether four canonical fields. `logo`, `description`, `twitter` and `website`. were returned. The aggregate is the share of (provider, chain, field) combinations that returned a populated value across all fresh-token checks in the window. Higher is better. A value of 100% means every field was returned for every fresh token; a value of 50% means half the fields were missing on average. Sort order on this page is ascending. the lowest coverage shows first, which is the inverse of latency benchmarks. Readers should compare the columns themselves; numerical p50 is the headline.

Methodology

  • ·Token discovery: Mobula Pulse V2 WebSocket on `solana`, `evm:56` (BNB), `evm:8453` (Base) for known launchpads (pump.fun, Meteora DBC, Four.meme, Raydium CPMM, Zora, BaseApp, Bags, Moonshot).
  • ·Coverage check: for each fresh token, query each aggregator's metadata endpoint and record whether `logo`, `description`, `twitter` and `website` are populated.
  • ·Aggregators in scope: Mobula (`/api/2/token/details`), Codex (GraphQL `token` query, JWT-authenticated), Jupiter (`/v6/tokens/<mint>`, Solana only).
  • ·Cadence: queue-driven; every newly-discovered token is checked once across the three aggregators. Steady-state ≈ several hundred checks per provider per hour.
  • ·Region: `eu-west` (single point. multi-region requires running additional monitor instances).
  • ·Ratio: `metadata_coverage_success_total / metadata_coverage_checks_total`, expressed in percent. Failures of the metadata API itself (timeouts, 5xx) are not counted in the denominator. only successful responses with the field check applied.
  • ·Jupiter is Solana-only. it appears with zero coverage on EVM chains by construction; the cross-chain headline excludes Jupiter on chains it does not support.
Share · export · embed

Pick a layout and download a 1200×630 PNG ready for Twitter, Reddit, LinkedIn or any OG-card embed. Same data, same colors as this dashboard.

Vertical bars sorted ascending by p50, with provider names and p99 tails.

Token Metadata Coverage. Ranking share card
Generating preview…
Open raw ↗

Source code github.com/OpenChainBench/OpenChainBench/tree/main/harnesses/aggregator-head-lag