Instantly look up any website's global ranking and track how it changes — free, no account needed.
A global rank is a single number that tells you where a website sits among every other site on the web — #1 is the most-visited domain online. Smaller numbers mean bigger audiences. Here's what's behind the numbers you see.
Ranks refresh every day from aggregated traffic signals across millions of domains. Yesterday's rank is already in.
See how a site's rank has moved over the past week, two weeks, or full month — spot trends, not just snapshots.
Each rank is paired with an estimated monthly visit count based on a power-law model calibrated to known traffic data.
Every ranking is available over a simple JSON endpoint. No auth, no quota forms, no signup — just query and go.
It's the site's position in a global ordering of all tracked domains by estimated traffic volume. Rank #1 is the single most-visited site worldwide; rank #1,000,000 is still very much on the map but in the long tail. Lower is better.
Rankings are recomputed once per day. New data lands in the API within a few hours of each roll-up, so the number you see here reflects yesterday's activity at the latest.
We only track domains with enough signal to rank meaningfully. New sites, very-low-traffic sites, and sites that block our crawlers may not be indexed yet. Come back in a few weeks — coverage grows with every update.
No — they're estimates derived from the rank, not measured directly. Expect order-of-magnitude accuracy: a site ranked #500 really does get roughly 100× the traffic of one ranked #50,000, but don't treat a 10% difference between two neighbors as gospel.
Yes. The API is free to query, and you can cite or display the numbers in your own product, report, or dashboard. A link back is appreciated but not required.
Query domain rankings programmatically. The API is free with no authentication required. Rankings are updated daily and cover millions of domains worldwide.
https://rank.to/api/?d={domain}&n={days}
| Parameter | Type | Required | Description |
|---|---|---|---|
| d | string | required | Domain to query, e.g. github.com |
| n | integer | optional | History window in days. Accepted: 7, 14, 30. Default: 7 |
{
"ranks": {
"2025-06-14": 68,
"2025-06-15": 67,
"2025-06-16": 70,
"2025-06-17": 66,
"2025-06-18": 65
},
"time": "2.341ms"
}
| Field | Type | Description |
|---|---|---|
| ranks | object | Date → rank pairs, ascending by date. Empty object if domain has no ranking data. |
| time | string | Server-side query execution time for diagnostics. |
// Fetch 30-day rank history for github.com const res = await fetch('https://rank.to/api/?d=github.com&n=30'); const data = await res.json(); // Most recent rank const sorted = Object.entries(data.ranks).sort(([a],[b]) => a.localeCompare(b)); const [date, rank] = sorted.at(-1); console.log(`github.com is ranked #${rank} as of ${date}`);
// Hit "Run" to send the request…
Content-Type: application/jsonranks object is empty if the domain has no ranking datawww. — strip it before queryingn parameter only accepts 7, 14, or 30