Tranco rank checker API
The Tranco rank checker API looks a domain up in the latest Tranco top-1M list, a research ranking built to be harder to manipulate than single-source lists.
Early access: billing is not open yet. Prices below are what a call will debit when it opens. Request access →
Price: $0.001 per call (one credit), with 25 free lookups per account each UTC month. Data source: Tranco.
Request
Send POST /v1/rank with a JSON body and your key in the Authorization: Bearer header. Send a domain. The JSON names the Tranco rank, list id, and list date. A domain that is absent returns rank null and HTTP 200.
curl https://one-api.ai/v1/rank \
-H "Authorization: Bearer $ONE_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"domain":"example.com"}'
import os, requests
resp = requests.post(
"https://one-api.ai/v1/rank",
headers={"Authorization": f"Bearer {os.environ['ONE_API_TOKEN']}"},
json={"domain":"example.com"},
timeout=30,
)
print(resp.status_code, resp.json())
Response fields
| Field | Meaning |
|---|---|
domain | The normalised domain you sent. |
rank | Position in the list, from 1, or null when the domain is not on it. |
list_id | Tranco's identifier for the list used, so results can be reproduced. |
list_date | The date of that list. |
Limits and behaviour
- The list is downloaded from tranco-list.eu and cached for about a day, so a lookup reflects the newest list we have fetched.
- Only registrable domains are ranked by Tranco. Subdomains usually return null.
- A domain that is absent returns rank null with HTTP 200, not an error.
- Tranco is meant for research. Cite the list id when you publish a rank.
Errors come back as JSON with an HTTP status and a short code. HTTP 400 means the input was refused, 401 a missing or bad key, 402 an empty balance, 429 a rate limit and 502 an upstream failure. Calls that end in 400 or a 5xx status are not charged.
What people use it for
- Filter a prospect list to sites inside the top million.
- Give an agent a dated, citable popularity signal.
- Track whether a domain enters or leaves the list over time.
- Sort a batch of domains by rough popularity before running slower page audits on the top ones.
The same lookup is available to AI agents through the remote MCP server at https://one-api.ai/mcp, using the same key and the same price per call.
FAQ
How often is the rank updated?
Tranco publishes a new list daily. We cache the latest one for about a day.
Why is my domain null?
It is not in the current top million, or you sent a subdomain instead of the registrable domain.
Is Tranco the same as Alexa rank?
No. Alexa's ranking was retired in 2022. Tranco combines several public rankings into one list, as described on tranco-list.eu.
Is a domain that is not ranked still charged?
Yes. A lookup that returns HTTP 200 is charged as one call, including a null rank. Requests rejected with a 400 or failing with a 5xx are released and not charged.
Related
Last updated 2026-10-31.