Similarweb Scraper: Website Traffic & Rank, No Login
Pricing
from $1.50 / 1,000 domain scrapeds
Similarweb Scraper: Website Traffic & Rank, No Login
Scrape Similarweb's free public website overview: estimated monthly visits, engagement, traffic-source split, top countries & similar sites. No login, no paid Similarweb seat. Use it as an MCP server in Claude, ChatGPT & AI agents.
Pricing
from $1.50 / 1,000 domain scrapeds
Rating
0.0
(0)
Developer
The Mine Works
Maintained by CommunityActor stats
0
Bookmarked
15
Total users
6
Monthly active users
3 days ago
Last modified
Categories
Share
From The Mine Works, makers of Threads Scraper and B2B Leads Finder, with over 140,000 runs across 170+ public actors.
Give it a list of website domains and it returns what Similarweb's free, logged out website overview shows for each one: global rank, category rank, country rank, estimated monthly visits and their monthly change, bounce rate, pages per visit, visit duration, the top countries by share of traffic and the similar sites Similarweb lists. One clean JSON row per domain, with no Similarweb account and no paid seat.
Why choose this actor?
- Similarweb's free overview as clean data, without a login. On 23 September the report for wikipedia.org came back in a 27 second run: global rank 11, 3.5 billion monthly visits, a 53.4% bounce rate, 3.34 pages per visit and 5 top countries led by the United States at 26.6%. No Similarweb Pro seat and no Data API contract.
- You pay only for a real report. Domains Similarweb has no report for come back as a
no_datarow and are free, and lookups that stay blocked after every retry are free too. A report costs $0.002 on the Free plan and $0.0015 on Gold and above. - Up to 50 domains in one run, 6 at a time, with retries built in. Similarweb's page takes a while to render: our runs took 27 to 87 seconds for one domain. When an attempt comes back unfinished, the actor retries it on a fresh session (up to 3 retries by default), as it did on 30 September, when the first attempt for wikipedia.org returned HTTP 502 and the second delivered the report.
Part of The Mine Works Marketing, SEO and reviews family: Facebook Ad Library Scraper, Google Ads Transparency Scraper, Google News Scraper, Trustpilot Reviews Scraper, Google Trends Scraper, Semrush Scraper.
Try it in one minute
Paste this into the JSON tab of the input page and press Start:
{"domains": ["wikipedia.org", "github.com", "nytimes.com"]}
The three domains are looked up at the same time, so the run usually finishes in one to two minutes, depending on how fast Similarweb's page renders that day.
The one required input is domains: website domains, one per line in the Console form or an array of strings in JSON. The bare domain is best (nike.com), but a pasted address also works: the actor lowercases it and removes https://, www., any path and any query string, so https://www.nike.com/in/ becomes nike.com. Duplicates are removed and up to 50 domains are kept per run. The only other input, maxRetriesPerDomain, controls how hard each domain is retried.
Apify's free plan includes $5 of credit every month, which covers about 2,200 domain reports at this actor's Free plan price ($0.002 a report plus the $0.01 start fee, in runs of 50 domains).
Copy to your AI assistant
themineworks/similarweb-scraper on Apify. Returns Similarweb's free public website overview for each domain: global, category and country rank, category, estimated monthly visits and change, bounce rate, pages per visit, visit duration, top countries and similar sites. Call ApifyClient("TOKEN").actor("themineworks/similarweb-scraper").call(run_input={...}), then client.dataset(run["defaultDatasetId"]).list_items().items. Required: domains (string[], bare domains such as "nike.com", 1 to 50 per run). Optional: maxRetriesPerDomain (integer 1 to 6, default 3; each domain gets this many retries plus the first attempt). Rows with _type "no_data" mean Similarweb has no report for that domain (never billed); rows with _type "summary" or "info" are run reports (never billed). For more than about 30 domains, pass timeout_secs=1200 to call(). Full spec: GET https://api.apify.com/v2/acts/themineworks~similarweb-scraper/builds/default (Bearer TOKEN), which returns inputSchema and readme. Token: https://console.apify.com/account/integrations
Key features
- 16 fields per report.
domain,url,global_rank,category,category_rank,country_rank,top_country,total_visits,visits_change_pct,bounce_rate_pct,pages_per_visit,avg_visit_duration,traffic_sources,top_countries,similar_sitesandchecked_at. - Read from the data inside the page, not from the screen. Similarweb's overview page carries its whole report as structured JSON. The actor reads that JSON directly, so the numbers are the ones Similarweb stores, not text scraped off rendered pixels, and a field is never guessed.
- Top 10 lists. Up to 10 top countries with their share of traffic (the free page showed 5 for wikipedia.org) and up to 10 similar sites.
- Retries that match how the page behaves. A finished report takes a while to render behind Similarweb's protection. A quick HTTP 202, a 502, a timeout, a challenge page or a page without the report data is retried on a fresh session, with 90 seconds allowed per attempt. With the default
maxRetriesPerDomainof 3, each domain gets up to 4 attempts. - No browser, no login. Requests go through Apify's unblocking proxy, which is included in the price per report. There is no Similarweb account, cookie or API key to supply.
- A stop switch for bad days. If 8 domains in a row stay blocked after all their retries, the run stops instead of paying for more failed attempts, and the summary row says so.
How to use it
Basic: one domain
{"domains": ["wikipedia.org"]}
One report row, a summary row and a short info row come back.
Several domains at once
{"domains": ["notion.so", "clickup.com", "asana.com", "monday.com", "airtable.com", "trello.com"]}
Six domains run side by side, so this takes about as long as the slowest one. For more than about 30 domains, raise the run timeout from the default 600 seconds to 1,200 seconds in the run options: each attempt may wait up to 90 seconds, and a domain that needs retries takes longer. If a run does reach its timeout, it ends 15 seconds early and keeps every report already delivered.
Monthly competitor traffic benchmark
{"domains": ["yourbrand.com", "competitor-one.com", "competitor-two.com", "competitor-three.com"],"maxRetriesPerDomain": 4}
Save it as a task and schedule it monthly (for example 0 6 2 * *, 06:00 on the 2nd of each month). Similarweb's figures are monthly estimates: in our scheduled checks, wikipedia.org showed the same rank (11) and the same 3.5 billion visits on 16, 23 and 30 September, so checking more often than weekly mostly re-reads the same numbers. Put checked_at, total_visits and visits_change_pct in a sheet to watch the trend.
Prospect qualification for a sales list
{"domains": ["acme-widgets.com", "brightwave.io", "northpeak.co"],"maxRetriesPerDomain": 2}
Use total_visits, global_rank and top_country to sort prospects by web scale and market before a call. Small sites often have no public Similarweb report; they come back as no_data rows at no charge, which is itself a useful signal of a very small web presence. Lowering maxRetriesPerDomain makes a long list finish faster at the cost of a few more blocked lookups.
Market map for a category
Feed 50 domains from one category (for example every listed company in your niche) and build a comparison table from total_visits, category_rank and top_countries. similar_sites gives you up to 10 more domains Similarweb considers comparable, which you can add to the next run to widen the map.
Input parameters
| Parameter | Type | Default | What it does |
|---|---|---|---|
domains | array of strings (1 to 50) | ["wikipedia.org"] (also the form prefill) | Website domains to look up. Lowercased, with https://, www., paths and query strings removed; duplicates removed; the first 50 kept. Each domain with a real report is one billed result. |
maxRetriesPerDomain | integer (1 to 6) | 3 | How many extra attempts a domain gets, each on a fresh proxy session, when a request comes back unfinished, blocked or without the report. Total attempts per domain are this number plus one. |
Run options. The default timeout is 600 seconds and the default memory is 256 MB, which is enough: the actor runs no browser. The start fee is one event at any memory up to 1 GB.
What data do you get?
One row per domain that has a Similarweb report. Fields the free overview does not show for a domain are left out of that row rather than filled with null or a guess.
Identity: domain (as looked up), url (the Similarweb overview page for it), category (Similarweb's category, made readable, for example Dictionaries and Encyclopedias), checked_at.
Ranks: global_rank, category_rank (rank inside its category), country_rank (rank in its top country), top_country.
Traffic and engagement: total_visits (estimated monthly visits, formatted such as 3.5B, 12.4M or 830.2K), visits_change_pct (month over month change as text such as +1.0%), bounce_rate_pct (a number such as 53.4), pages_per_visit, avg_visit_duration (hh:mm:ss).
Where visitors come from: top_countries (a list of country and share_pct), traffic_sources (an object of channel name to percentage, holding only the channels the free page discloses a percentage for). In every run we have on record, the free page disclosed one channel, organic search (organic: 76.9 for wikipedia.org), so do not expect a full channel split from this field.
Similar sites: similar_sites, up to 10 domains Similarweb lists as similar or competing.
Other rows: a domain Similarweb has no report for gets a _type: "no_data" row with domain, url and scraped_at, and is not charged. A domain that stays blocked after all its attempts gets no row; it is counted in the summary's blocked_count and is not charged. Every run ends with a _type: "summary" row (domains_requested, delivered, charged_for, blocked_count, no_data_count, waf_challenge_seen, cost_guard_tripped) and, when at least one report was delivered, a _type: "info" row. None of these rows is charged. Skip rows that have a _type field when you load reports.
Stable fields for automations
domain, url and checked_at are in every report row. The other fields below were present in every report row we sampled (our scheduled checks of wikipedia.org on the live build); for a smaller site, Similarweb's free page may leave some ranks or lists out, and then the field is absent.
| Field | What it holds |
|---|---|
domain | The domain looked up, cleaned (lowercase, no www.) |
url | Similarweb overview URL for the domain |
checked_at | ISO timestamp of the lookup |
global_rank | Similarweb global rank (number) |
category | Similarweb category, readable text |
category_rank | Rank inside that category (number) |
country_rank | Rank in the top country (number) |
top_country | Country with the largest share of traffic |
total_visits | Estimated monthly visits, formatted text such as 3.5B |
visits_change_pct | Monthly change in visits, text such as +1.0% |
bounce_rate_pct | Bounce rate as a number, for example 53.4 |
pages_per_visit | Average pages per visit (number) |
avg_visit_duration | Average visit duration, hh:mm:ss |
top_countries | List of country and share_pct |
similar_sites | List of similar domains |
We will not rename these fields. New fields may be added over time; existing ones keep their names.
Output examples
Real rows from our own scheduled run of the live build on 30 September 2026.
A full report (wikipedia.org; this run's first attempt got HTTP 502 and the second delivered):
{"domain": "wikipedia.org","url": "https://www.similarweb.com/website/wikipedia.org","global_rank": 11,"category": "Dictionaries and Encyclopedias","category_rank": 1,"country_rank": 14,"top_country": "United States","total_visits": "3.5B","visits_change_pct": "+1.0%","bounce_rate_pct": 53.4,"pages_per_visit": 3.34,"avg_visit_duration": "00:03:14","traffic_sources": { "organic": 76.9 },"top_countries": [{ "country": "United States", "share_pct": 26.6 },{ "country": "Japan", "share_pct": 6.2 },{ "country": "United Kingdom", "share_pct": 5.8 },{ "country": "Germany", "share_pct": 5.3 },{ "country": "France", "share_pct": 4.1 }],"similar_sites": ["wikidata.org", "wiktionary.org", "baike.baidu.com", "dict.naver.com", "weblio.jp", "wordreference.com", "kotobank.jp", "glosbe.com", "yourdictionary.com", "lexilogos.com"],"checked_at": "2026-09-30T11:05:29.297Z"}
The summary row of the same run (never charged):
{"_type": "summary","domains_requested": 1,"delivered": 1,"charged_for": 1,"blocked_count": 0,"no_data_count": 0,"waf_challenge_seen": false,"cost_guard_tripped": false,"charged": 1,"charge_failures": 0,"scraped_at": "2026-09-30T11:05:29.692Z"}
The info row that follows it (never charged; its one line message field is left out here):
{"_type": "info","delivered": 1,"schedule_tip": "Want this refreshed automatically? Apify Console -> this Actor -> Schedules -> Add schedule -> pick how often (e.g. daily) -> Save. It reruns with the same input on autopilot, no code required.","scraped_at": "2026-09-30T11:05:29.924Z"}
Pricing
Pay per event: you pay for each domain report delivered, plus a small start fee per run.
| Event | Free | Bronze | Silver | Gold and above |
|---|---|---|---|---|
domain-scraped, per report | $0.002 | $0.002 | $0.0018 | $0.0015 |
domain-scraped, per 1,000 reports | $2.00 | $2.00 | $1.80 | $1.50 |
apify-actor-start, per run | $0.01 per GB of run memory, minimum one event | same | same | same |
The start fee, exactly. Apify's apify-actor-start event is charged once when a run starts, at $0.01 for each GB of memory the run uses, with a minimum of one event. This actor runs on 256 MB by default, so a default run pays one event: $0.01. Raising memory does not make it faster and, above 1 GB, raises the start fee.
Worked examples. 50 domains on the Free plan: 50 x $0.002 = $0.10, plus $0.01: $0.11. The same run on Gold: $0.075 plus $0.01. A monthly check of 10 competitors on the Free plan costs $0.03 a month.
Never charged: domains Similarweb has no report for (no_data rows), domains that stay blocked after every attempt, duplicate domains in your list, domains past the 50th, retries, and the summary, info and skipped rows. A run that delivers no report pays only the start fee.
There is no scheduled price change for this actor. The Pricing tab on this page always shows the rate for your plan; if it and this table ever differ, the Pricing tab is right.
FAQ
What is Similarweb, and which part of it does this read?
Similarweb estimates how much traffic websites get and where it comes from. This actor reads only its free website overview page, similarweb.com/website/<domain>, the same page anyone sees without logging in. It does not touch Similarweb's paid platform, its keyword reports, its benchmarking tools or its Data API, and it never will.
How accurate are the numbers? They are Similarweb's own estimates, returned exactly as its page stores them. Similarweb models traffic from panels and other signals, so treat the figures as estimates for comparing sites and spotting trends, not as a site's own analytics. This actor adds no numbers of its own.
How many domains can I check? Up to 50 per run, 6 at a time. For longer lists, split them into runs of 50 by hand, with a loop over the Apify API, or from Make, Zapier or n8n.
How long does a run take? A single domain took 27 to 87 seconds in our runs on the live build, because Similarweb's page takes time to render behind its protection. With 6 domains processed at once, 50 domains take several minutes. Give runs of more than about 30 domains a timeout of 1,200 seconds.
How fresh is the data? Each run reads the page live. The figures themselves are Similarweb's monthly estimates, so they change about once a month, which is why a monthly or weekly schedule is enough.
Why is traffic_sources only showing organic search?
The free overview page disclosed a percentage for one channel, organic search, in every run we have on record. The actor includes a channel only when the page gives it a number, rather than guessing the rest. If Similarweb shows more channels on the free page in future, they will appear in the same object.
What happens when Similarweb has no report for a domain?
You get a _type: "no_data" row with the domain and its Similarweb URL, and you are not charged. Very small or new sites, and domains that do not exist, have no public report. That answer is not retried, since retrying will not change it.
What if a domain stays blocked?
After all its attempts (4 by default) the domain is skipped without a row and without a charge, and it is counted in the summary's blocked_count. Run those domains again later, or raise maxRetriesPerDomain. If 8 domains in a row stay blocked, the run stops early and cost_guard_tripped is true in the summary; domains it did not reach may appear as _type: "skipped" rows.
Do I need a Similarweb account, cookies or a proxy? No. You need only an Apify account. The actor sends its requests through Apify's unblocking proxy, and that cost is included in the price per report.
How do I export the data?
From the run's Storage tab as JSON, CSV, Excel, XML or HTML, or through the Apify API. top_countries, traffic_sources and similar_sites are nested; in CSV they are flattened into numbered columns.
Can I use it from Claude, ChatGPT or another AI assistant?
- Connector URL:
https://mcp.apify.com/?tools=themineworks/similarweb-scraper. - Claude: Settings > Connectors > Add custom connector, paste the URL, sign in with Apify.
- ChatGPT: developer mode, add an MCP connector with the URL, sign in with Apify.
- Cursor or VS Code: add it as an HTTP MCP server with that URL.
- Claude Code:
claude mcp add -t http similarweb-scraper "https://mcp.apify.com/?tools=themineworks/similarweb-scraper".
Is it legal to scrape Similarweb? The actor reads only Similarweb's public overview page, which anyone can open without an account, and it returns traffic estimates about websites, not data about people. It does not log in or get past a paywall. You are responsible for how you use the data, including Similarweb's terms and data protection laws such as GDPR and CCPA. This is general information, not legal advice.
Integrations
- Google Sheets: export a run to a sheet, or use Apify's Google Sheets integration to append each monthly run to a tracking sheet.
- Make, Zapier and n8n: use the Apify app or node to start a run with domains from your CRM or a sheet, then write
total_visitsandglobal_rankback to each record. - Webhooks: have Apify call your URL when a run succeeds, then read the dataset.
- API and client libraries: start runs and read datasets from Python, JavaScript or any HTTP client. The "Copy to your AI assistant" block above has the exact call.
- MCP clients: Claude, ChatGPT, Cursor, VS Code and Claude Code can call the actor as a tool through
https://mcp.apify.com.
For a second view of the same domains, Semrush Scraper returns Authority Score and backlink counts, and Tech Stack Detector lists the technologies a site runs on.
More from The Mine Works
Marketing, SEO and reviews
- Facebook Ad Library Scraper
- Google Ads Transparency Scraper
- Google News Scraper
- Trustpilot Reviews Scraper
- Google Trends Scraper
- Semrush Scraper
- App Review Monitor
- Trustpilot Business Search
- TripAdvisor Reviews Scraper
- Username Checker
- Backlink Building Agent
- E-commerce Intel MCP
Social media and video
Leads and business directories
Real estate
Science, health and government data
Jobs and hiring
E-commerce and marketplaces
Company and business data
Food and local services
Developer and AI tools
More tools
- Tennis Match & Player Data Scraper
- Google Hotels Prices Scraper
- LandWatch Scraper
- Capterra Reviews Scraper
Support
Found a domain that returns the wrong figures, or a field you need? Open an issue on the Issues tab of this page with the domain and the run ID, and we will reply there. To ask for a new data source, email dmineworks@gmail.com. A guide for this actor also lives at themineworks.com.
Similarweb Scraper turns Similarweb's free website overview into one clean row per domain, and charges only for domains that have a report.

