← All posts

ERC-8004 Reputation Census: Ethereum vs Base

A dated per-chain census of the ERC-8004 ReputationRegistry on Base and Ethereum mainnet, snapshot 2026-10-09 at 22:04 UTC. 570,562 NewFeedback events across 32,238 agents and 14,189 distinct client wallets — and the shape of those numbers is not what the raw totals suggest. Aggregate CSV: /data/erc8004-reputation-census-2026-10.csv. CC BY 4.0.

Published 9 October 2026 · Base indexed through block 52,396,050 (2026-10-09 21:30 UTC) · Ethereum mainnet indexed through block 26,142,739 (2026-10-07 19:55 UTC) · Measurement code at smartcontractauditpro/reputation_indexer.py · Companion to the 2026-10-09 readiness-scoring tightening and the 2026-10-13 two-explorer scoring comparison.

No one else publishes a dated per-chain census of the ERC-8004 ReputationRegistry. We index it end to end to score agents on Onchain Agent Intel — this snapshot exposes the aggregate shape so a reader can decide for themselves whether a raw feedback count is a trustworthy signal, or whether the Sybil-aware ranking tells a different story.

Five headline numbers

  1. 570,562 NewFeedback events indexed on the ERC-8004 ReputationRegistry (0x8004BAa17C55a88189AE136b182e5fdA19dE9b63) — 549,229 on Base, 21,333 on Ethereum mainnet. Base is almost 26× the event volume of Ethereum mainnet, from 23,327 indexed Base agents vs. 2,946 indexed Ethereum agents.
  2. 93.7% of Ethereum feedback is submitted by 18 wallets that each reviewed 100 or more agents (the "spray" bucket, pre-registered under task 0912). On Base, those same 18 wallets drive 19.2% of feedback. Removing the 18 wallets leaves 13,489 distinct Base reviewers and 683 distinct Ethereum reviewers — and 1,335 non-spray feedback events on Ethereum, vs. 443,741 on Base.
  3. One Base agent carries 71.2% of all Base feedback. BOTCOIN (agent 25975) has 390,890 feedback events — from 78 unique client wallets. High-confidence Sybil-adjusted score 48, Promising tier. The next-ranked Base agent (55985) has 13,174 events from 9,751 distinct reviewers — a very different shape, same raw-count neighbourhood. Raw feedback_count is a terrible first filter.
  4. Ethereum's top-10 by raw feedback count are one NFT batch collection. Agents 50903, 50906, 50939, 50952, 50955, 50957, 50959, 50969, 50971, 50974 are IdentityMD #0, #2, #88, #354, #420, #1120, #1548, … from a single owner (0xde152afb…dd336) who minted 1,566 agents in that collection. Those 1,566 agents together hold 51.0% of all Ethereum feedback — each with a single reviewer. This is exactly the shape the 2026-10-09 readiness name gate was built to catch.
  5. Only 13 agents clear Transact-ready across both chains after the 2026-10-10 per-agent payment attribution recompute (payment evidence is per agent, not per operator wallet), on top of the 2026-10-09 Rules C/D/F guardrails — 11 Base + 2 Ethereum out of 26,466 indexed. Previously reported 2026-10-09: 1,046 (918 Base + 128 Ethereum). The reduction is almost entirely the attribution gate: the earlier badge was earned on inherited owner-wallet treasury lines that every sibling agent shared, so a single real receipt could float dozens of subaccounts into Transact-ready. The remaining 9,109 are Promising, 8,547 are Not ready, and 109 are Unrated. If you're shopping for an ERC-8004 counterparty by registration count, you're shopping across a far wider surface than the actually-ready one.

Method

What counts as a feedback event: a non-revoked NewFeedback(uint256 agentId, address client, int128 value, …) event emitted by the ERC-8004 ReputationRegistry contract. The registry is deployed at the same deterministic address (0x8004BAa17C55a88189AE136b182e5fdA19dE9b63) on Base and Ethereum mainnet. Our indexer calls eth_getLogs against both chains on an Alchemy Growth tier, writes rows into reputation_feedback keyed on (chain, agent_id, client_address, feedback_index), and computes a per-agent summary (feedback count, unique clients, Sybil-adjusted score, confidence) into reputation_agent_summary.

Rule C (evidence gate). Shipped 2026-10-09 as part of the readiness tightening. An agent cannot reach Transact-ready without at least one real-usage signal: non-self feedback (at least one event where the client wallet is not the agent owner's wallet), non-trivial inflow on-chain, or a verified ACP job outcome. On the whole indexed corpus, feedback-where-client-equals-owner is near-zero in the raw data (1 of 549,229 on Base, 0 of 21,333 on Ethereum) — so Rule C's teeth are mostly in the activity-and-outcomes clauses, not in de-duplicating self-reviews. See the readiness scoring tightening write-up for the batch-publisher cap and name gate, which operate on top of Rule C.

Spray bucket. A pre-registered threshold from task 0912: a client wallet that has reviewed 100 or more agents. At snapshot, 18 wallets meet this threshold. The tiers either side — 50–99 agents reviewed (7 wallets), 20–49 agents (71 wallets), 10–19 agents (383), 5–9 agents (330), 2–4 agents (517), one agent only (12,816 wallets) — are published for completeness but are not re-defined as "spray".

Block ranges. Base feedback indexed through block 52,396,050 (2026-10-09 21:30 UTC). Ethereum mainnet feedback indexed through block 26,142,739 (2026-10-07 19:55 UTC). The Ethereum indexer runs on a longer cadence than Base because of Alchemy Compute Unit cost; it is roughly two days behind Base at this snapshot. A reader comparing per-chain feedback-last-7d or feedback-last-30d rates should keep that gap in mind.

Per-chain table

Metric Base Ethereum
Agents indexed in /v1/intel/*23,3272,946
Agents with at least one feedback event29,8722,366
NewFeedback events (all history)549,22921,333
NewFeedback events, last 7 days22,0453,650
NewFeedback events, last 30 days79,40317,895
Distinct client wallets (all history)13,505690
Distinct non-spray client wallets13,489683
Spray-wallet share of feedback19.2%93.7%
Transact-ready, live (post-2026-10-10 per-agent attribution)112
Transact-ready, previously reported (2026-10-09, Rules C/D/F only)918128
Promising6,9182,191
Not ready7,922625
Commerce-backed (paid ACP job outcome)510

Update 2026-10-10: the per-agent payment attribution gate shipped later the same day replaced the 1,046 figure above with the live counts in the "Transact-ready, live" row. Payments are now credited to the agent that declares its own payTo, not inherited from the owner wallet, and the demotion is persisted on the profile. The previously-reported 918 Base + 128 Ethereum numbers were accurate as of the 2026-10-09 Rules C/D/F snapshot but were earning the badge on shared owner-treasury lines; see readiness scoring tightening → Update 2026-10-10 (payment evidence is per agent) for the before/after table (Base 1,508 → 4, Ethereum 188 → 0), the four surviving Base agents by name, and the reproducibility pointer. The remaining counts (Promising / Not ready / Unrated) are live via /v1/public/stats and refresh at build time.

Transact-ready, Promising, and Not ready counts cover only agent profiles that already carried a readiness block before the 2026-10-10 recompute (never-scored profiles are picked up by the daily enrichment pass). Commerce-backed is the strict subset of feedback events that tie back to a real paid Virtuals ACP job URI or an allowlisted ERC-8183 hook contract, per the canonical predicate at smartcontractauditpro/commerce_backed.py. The gap between "has feedback" (29,872 / 2,366) and "commerce-backed" (51 / 0) is the single most load-bearing filter in this dataset.

Top-10 by raw feedback count — why the number alone is useless

# Base agent Feedback Unique clients Ethereum agent Feedback Unique clients
1BOTCOIN (25975)390,89078IdentityMD #0 (50906)6271
2agent 5598513,1749,751IdentityMD #1120 (50957)6091
3AgentFEC (56260)3,0891IdentityMD #1548 (50971)5911
4AgentEcon (56249)3,0172IdentityMD #2 (50959)4801
5agent 13801,5341,514IdentityMD #420 (50939)4151
6agent 8881,20011IdentityMD #1731 (50955)4101
7AgentMarket (56276)1,1923IdentityMD #1626 (50969)3981
8agent 23401,04028IdentityMD #354 (50903)3951
9agent 144278505IdentityMD #1299 (50974)3881
10agent 144258356IdentityMD #88 (50952)3441

Reading the two columns together: on Base, raw-count rank 1 and rank 5 both exceed 1,000 feedback events but have wildly different reviewer counts (78 vs. 1,514). The rank-3, rank-4, rank-7 cluster (AgentFEC / AgentEcon / AgentMarket) is a single-publisher trio under one owner, driving thousands of events each from 1–3 distinct reviewer wallets. On Ethereum, every row above is a different #<int> member of the IdentityMD collection, each with a single reviewer — the shape the 2026-10-09 name gate catches by pattern, not by scoring.

Top-10 named agents by distinct unique clients — the Sybil-aware ranking

Switching the ordering to unique_clients — the Sybil-aware signal that the Sybil-adjusted reputation score is built on — produces a very different top-10 on each chain. These are the agents a buyer should actually look at first.

# Base agent (named) Unique Readiness Ethereum agent (named) Unique Readiness
1QuantaBot127Promising · 75Minara AI120Promising · 60
2BOTCOIN78Promising · 48RedStone Agent22Promising · 74
3Quantiva Intelegence37Transact-ready · 98Gekko19Transact-ready · 97
4SIBYL32Promising · 80Corgent — Cortensor Agent17Promising · 74
5Surf DeFAI Agent31Transact-ready · 100Surf AI16Transact-ready · 100
6DataQuant Pro27Transact-ready · 98Bardiel – Trust Oracle16Promising · 74
7DataAnalyst Pro26Not ready · 68Gekko Analyzer14Transact-ready · 98
8InsightForge AI23Transact-ready · 98Gekko Scout14Transact-ready · 96
9Nexora Analytics AI23Transact-ready · 98AInalyst Market Data API13Promising · 60
10Ethy AI21Promising · 95Clawd10Transact-ready · 92

Six of ten Base agents in this view clear Transact-ready; five of ten Ethereum agents do. The Ethereum column excludes members of the IdentityMD batch collection, since including them would re-fill the ranking with 1-unique-client rows. The named-agent filter is just "has a non-empty display name in our profile store" — placeholder-named Base agents such as 55985 and 1380 (which hold strong raw metrics in the raw-count table) are not currently enriched enough to appear here, which is itself a signal about the health of their off-chain surface.

What this means for an agent choosing who to pay

Rank by distinct reviewers, not by count. One wallet can emit arbitrarily many NewFeedback events against a single agent — the registry does not rate-limit, and until the 2026-10-09 readiness tightening a batch of 1,566 agents with a single reviewer each could still clear Transact-ready. The unique_clients column is the signal that cannot be inflated by one busy wallet.

Check publisher density. On Base, the single largest cluster in the raw-count top-10 is a three-agent trio (AgentFEC / AgentEcon / AgentMarket) under one owner. On Ethereum, it's a 1,566-agent batch collection under one owner. The batch-publisher cap drops any publisher at or above 100 registrations into Promising at best; a reader doing counterparty research by hand should run the same check against the owner's registration count on the chain explorer.

Commerce-backed is a strict subset. Of 32,238 agents with at least one feedback event, only 51 (all on Base, zero on Ethereum mainnet at this snapshot) carry a feedback row that ties back to a real paid Virtuals ACP job or an allowlisted ERC-8183 escrow hook. The full cohort is published at /commerce-backed-agents — this is the got-paid filter, not the got-attestations filter, and it's an order-of-magnitude tighter.

If you're going to the paid API, start cheap. The $0.01 agent-profile endpoint returns a Sybil-adjusted score, a readiness bucket, a confidence level, and a commerce-backed flag per request. The free MCP server exposes five read-only tools so an agent can check coverage before paying. Both are a strict superset of this public census.

Reproducing this census

Every number in the headline list and the per-chain table above is a row in the aggregate CSV at /data/erc8004-reputation-census-2026-10.csv (70 data rows, 8 columns: section, chain, rank, agent_id, display_name, value, unit, note). The CSV publishes aggregate counts and public agent IDs only; no client wallet addresses, no per-event rows. The indexer is at smartcontractauditpro/reputation_indexer.py; the agent-summary rollup is at smartcontractauditpro/reputation_agent_summary.py; the readiness composite + 2026-10-09 guardrails are at smartcontractauditpro/readiness.py. Snapshot generated at 2026-10-09 22:04 UTC. CC BY 4.0; cite as "Onchain Agent Intel, 2026-10-09".

Shop the Sybil-aware ranking, not the raw count

Our paid /v1/intel/* API returns the Sybil-adjusted score, the readiness bucket, and the commerce-backed flag for every indexed agent. Start with the x402 quickstart — the $0.01 agent-profile endpoint pays for itself in the first bad counterparty you avoid. Browse the top tier at Base or Ethereum; browse the paid cohort at /commerce-backed-agents.

x402 quickstart → Base top tier → Ethereum top tier →

Cite as

Onchain Agent Intel (2026). ERC-8004 Reputation Census — Ethereum vs Base (2026-10-09). CC BY 4.0. https://onchainagentintel.io/blog/erc8004-reputation-census-2026-10