How we score and rank x402 endpoints — transparent and verifiable
Our commitment: Every ranking decision is documented here. No hidden factors, no pay-to-play, no editorial bias. If it's not on this page, it doesn't affect your score.
Every endpoint receives a Quality Score from 0-100, calculated as:
Percentage of successful health checks over the monitoring period.
How we measure: We ping each endpoint every 30 minutes. A "success" means the endpoint returns a valid 402 Payment Required response with properly formatted payment requirements.
New endpoints: Start at 50/100 until we have enough data (minimum 10 checks).
Based on average response time to return the 402 response.
| Response Time | Score |
|---|---|
| < 500ms | 100 |
| 500ms - 1s | 75 |
| 1s - 2s | 50 |
| 2s - 5s | 25 |
| > 5s | 0 |
How well the endpoint describes what it does.
| Criteria | Points |
|---|---|
| Meaningful description (>10 characters) | +40 |
| Input schema or parameters documented | +30 |
| Output schema or example response | +30 |
Source: We read documentation from the extensions.bazaar field in the 402 response.
How recently we verified the endpoint is active.
| Last Verified | Score |
|---|---|
| Today | 100 |
| 1-3 days ago | 80 |
| 4-7 days ago | 60 |
| 8-14 days ago | 40 |
| 15-30 days ago | 20 |
| > 30 days ago | 0 |
Scores translate to letter grades:
Separate from the Quality Score, each endpoint has a real-time health status:
| Status | Criteria |
|---|---|
| 🟢 Healthy | Last 3+ checks passed, response under 2 seconds |
| 🟡 Degraded | Intermittent failures or slow responses |
| 🔴 Unhealthy | Last 3+ checks failed |
| ⚪ Unknown | New endpoint, insufficient data |
| Factor | Included? | Why |
|---|---|---|
| Payment to us | ✗ | No pay-to-rank |
| Who runs it | ✗ | Permissionless by design |
| Our opinion | ✗ | Objective metrics only |
| Price | ✗ | Displayed but doesn't affect rank |
| Data | Source | Verifiable? |
|---|---|---|
| Uptime & Speed | Our health checks | Our measurements |
| Documentation | 402 response metadata | Query endpoint yourself |
| Price | 402 response | Query endpoint yourself |
| Endpoint existence | Discovery + submissions | Public |
We now pull on-chain transaction data from Basescan to include verifiable metrics like total payments received and transaction count. This lets you independently verify rankings against public blockchain data.
Anyone can submit an x402 endpoint for indexing. We'll verify it returns a valid 402 response and add it to the index. No approval process, no gatekeeping.