Links, websites & email
Domain popularity check
Coverage: Works with domains from any country. Majestic compiles the Majestic Million by crawling links across the web and publishes it under the CC BY 3.0 licence; our copy is updated every week. We look up the domain you type and the domains it belongs to (for shop.example.com, also example.com).
Open toolOn this page
Purpose
Check whether a website is among the million domains with the most links, according to the Majestic Million list, and at what rank. A well-known website isn’t always safe, and a small genuine shop usually isn’t on it.
Requirements
Anyone can read these guides, no account needed. Some tools require Pro, as indicated in each guide.
Well-known websites get links from thousands of other websites. Type a domain or paste a link and we’ll tell you whether it’s in the Majestic Million, the list of the million domains with the most links, and at what rank. It’s a hint, not proof: it measures links, not safety.
How to use it
Type a domain such as example.com, or paste a link or an email address: we only use the domain.
Press “Check its popularity”. We look up the domain, and the domains it belongs to, in our copy of the Majestic Million.
Read the result: its rank, how many different networks and addresses link to it and what that means.
Synthetic example
Invented example, not a real lookup. Do not call or open its links.
https://shop.example.com/cartInterpret the result
It’s a widely linked domain: It’s among the million domains that get the most links from other websites. That shows it’s well known, not that it’s safe: link shorteners and website builders are on the list too, and scammers use them.
It isn’t in the Majestic Million: Neither this domain nor the domain it belongs to is on the list. That’s normal for most genuine websites, such as a small shop or a local business. It’s only a bad sign if the website claims to be a big brand or a bank.
Rank: the domain’s position in the list. Number 1 is the domain with the most links on the internet, and number 1,000,000 the last one in.
Different networks: how many different /24 networks host websites that link to this domain. Majestic ranks the list by this number because it’s hard to inflate.
Different IP addresses: how many different IP addresses host websites that link to this domain.
The domain it belongs to: if you type an address such as shop.example.com and only example.com is on the list, we show you the rank of example.com.
Limitations
Neither this domain nor the domain it belongs to is on the list. That’s normal for most genuine websites, such as a small shop or a local business. It’s only a bad sign if the website claims to be a big brand or a bank.
We look the domain up in our copy of the list: nobody else is asked and we never open the website. Only the domain leaves your browser, and we don’t store it.
Troubleshooting
That doesn’t look like a public website. Try something like example.com, or paste the whole link.
The popularity list isn’t available right now. Try again later.
You’ve run a lot of checks in a short time. Wait a while and try again.
Use with the API
Needs an API key and credits. Each completed call costs 1 credit, even when there is no data. An active Pro account includes 20 credits per UTC calendar month, shared by every API route and spent first; unused monthly credits do not roll over. Credits bought on your account page work without Pro and never expire.
Errors are never charged: 401 invalid_api_key (missing or invalid key), 403 pro_required (no Pro credits and no purchased credits), 422 invalid input, 429 quota_exceeded (no credits left), rate_limit_exceeded or ai_busy (the AI of sms-check is at capacity), 503 tool_warming (the data is still being prepared) or tool or provider unavailable. After a 429 or 503, retry once the seconds in the Retry-After header have passed.
The rank of the domain, or of its closest listed parent, in the Majestic Million (the million most linked-to domains, CC BY 3.0), with its referring subnets and IPs. Most legitimate sites are not ranked; a rank is a hint, not proof. Show the source attribution with the rank.
Send the JSON body to the tool's own route, or to POST /v2/tools with the tool field added. Both routes return the same result.
POST https://api.nocall.io/v2/domain-popularity
POST https://api.nocall.io/v2/tools {"tool":"domain-popularity","url":"https://shop.example.com/cart","country":"ES"}Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| url | string (1–2000) | Yes | A link, a host name or an email address, 1–2000 characters. Only its domain is looked up and the link is never opened; website-legit also reads the link as pasted with the country’s link rules, as link-check does. IP addresses, single labels and special-use names (.local, .internal, .test…) are a 422. |
| country | string (enum, 55) | No (default: "ES") | Two-letter country code, for example ES or US. Accepted as in every website tool, but it does not change the result. |
REQUEST_ID="$(uuidgen)" && [ -n "$REQUEST_ID" ] &&
curl --request POST 'https://api.nocall.io/v2/domain-popularity' \
--header "Authorization: Bearer $NOCALL_API_KEY" \
--header 'Content-Type: application/json' \
--header "Idempotency-Key: $REQUEST_ID" \
--data '{"url":"https://shop.example.com/cart","country":"ES"}'import json
import os
import urllib.request
import uuid
api_key = os.environ.get('NOCALL_API_KEY')
if not api_key:
raise SystemExit('Set NOCALL_API_KEY')
request = urllib.request.Request(
'https://api.nocall.io/v2/domain-popularity',
method='POST',
data=json.dumps({'url': 'https://shop.example.com/cart', 'country': 'ES'}).encode(),
headers={
'Authorization': 'Bearer ' + api_key,
'Content-Type': 'application/json',
'Idempotency-Key': str(uuid.uuid4()),
},
)
with urllib.request.urlopen(request, timeout=30) as response:
result = json.load(response)
print(result['data']['result'], result['meta']['unitsCharged'])import { randomUUID } from 'node:crypto';
const requestId = randomUUID();
const apiKey = process.env.NOCALL_API_KEY;
if (!apiKey) throw new Error('Set NOCALL_API_KEY');
const response = await fetch('https://api.nocall.io/v2/domain-popularity', {
method: 'POST',
headers: {
Authorization: 'Bearer ' + apiKey,
'Content-Type': 'application/json',
'Idempotency-Key': requestId,
},
body: JSON.stringify({ url: 'https://shop.example.com/cart', country: 'ES' }),
});
const result = await response.json();
if (!response.ok) throw new Error(result.error?.code ?? 'request_failed');
console.log(result.data.result, result.meta.unitsCharged);Example response (200)
This is the documented example from the API reference. Lookups use a fictional number, and aggregates and AI answers show the shape of the result, not live data.
{
"data": {
"tool": "domain-popularity",
"result": {
"domain": "shop.example.com",
"domainAscii": "shop.example.com",
"ranked": true,
"rank": 1043,
"rankedDomain": "example.com",
"refSubnets": 48211,
"refIps": 81233,
"listSize": 1000000,
"updated": "2026-10-26",
"source": {
"name": "Majestic Million",
"url": "https://majestic.com/reports/majestic-million",
"license": "CC BY 3.0",
"licenseUrl": "https://creativecommons.org/licenses/by/3.0/"
}
}
},
"meta": {
"requestId": "req_example",
"unitsCharged": 1,
"usage": {
"periodStart": "2026-10-01",
"unitLimit": 20,
"unitsUsed": 3,
"unitsRemaining": 17
}
}
}Result fields (data.result)
| Field | Type | Description |
|---|---|---|
| domain | string | The domain in Unicode. |
| domainAscii | string | The same domain in ASCII (punycode), as DNS sees it. |
| ranked | boolean | Whether the domain or a parent is in the Majestic Million. Most legitimate sites are not. |
| rank | integer | null | Global rank in the list (1 is the most linked-to); null when not ranked. |
| rankedDomain | string | null | The listed name: the domain itself or the parent whose rank this is. |
| refSubnets | integer | null | Distinct /24 subnets linking to the listed name. |
| refIps | integer | null | Distinct IP addresses linking to the listed name. |
| listSize | integer | Domains in the loaded copy of the list. |
| updated | string | The day the API loaded this copy of the list (refreshed weekly). |
| source | object | The attribution the list’s CC BY 3.0 licence asks for (name, url, license, licenseUrl): show it with the rank. |
Frequently asked questions
What is the Majestic Million?
A free list of the million domains that get links from the most different networks on the internet. It’s published by Majestic, a company that crawls links across the web, under the CC BY 3.0 licence.
If a website is on the list, is it safe?
No. The list measures how many websites link to it, not whether you can trust it. Big services are on it, but so are link shorteners and website builders that scammers often use.
If it isn’t on the list, is it a scam?
No. Most genuine websites aren’t on it: a small shop, a restaurant or a freelancer’s website rarely makes the top million. It only stands out if the website claims to be a big brand, a bank or a public body.
How often is it updated?
We load a new copy of the list every week. The result shows the day of the copy we used.
