Similarweb Website Traffic Scraper avatar

Similarweb Website Traffic Scraper

Pricing

from $0.61 / 1,000 site with traffic data

Go to Apify Store
Similarweb Website Traffic Scraper

Similarweb Website Traffic Scraper

Scrape Similarweb traffic for any domain or Top Websites list: monthly visits, global, country and category rank, traffic sources, top countries, bounce rate. Export to JSON, CSV or Excel.

Pricing

from $0.61 / 1,000 site with traffic data

Rating

0.0

(0)

Developer

Nice Dev

Nice Dev

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

12 hours ago

Last modified

Share

📈 What is Similarweb Traffic Scraper?

Similarweb Traffic Scraper extracts website traffic data from Similarweb for any list of domains: monthly visits and their trend, global, country and category rank, bounce rate, pages per visit, visit duration, traffic sources, top countries, top keywords and AI chatbot traffic. It works as a Similarweb API alternative: no Similarweb account, no API key, no quota to request. Run it on a schedule, call it from your code, or plug it into Make, Zapier or n8n.

Type or paste your domains (apify.com, any URL of the site, or a file of thousands of them), or let the Actor discover sites from the Similarweb Top Websites lists of a country or a category, click Start, and download one row per site in JSON, CSV or Excel. No login, nothing to set up.

📋 What data can you extract from Similarweb?

One row per website, 64 fields:

CategoryWhat you get
🌐 Websitedomain, title, description, category, favicon and screenshots (desktop and mobile)
📊 Trafficestimated visits of the latest month, the previous months and the change in percent — 3,990,936 visits, −5.01 %
🏆 Rankglobal rank, rank in its main country, rank in its category — #9,800 worldwide
⏱️ Engagementbounce rate, pages per visit, average visit duration — 7.61 pages, 00:05:17
🚦 Traffic sourcesshare of direct, organic search, paid search, social, referrals, e-mail, display ads and AI visits, and the main channel
🌍 Countries and keywordscountries sending the most visits with their share, organic keywords with search volume and cost per click
🤖 AI trafficvisits referred by ChatGPT, Claude, Gemini and other AI assistants, month by month
🗂️ Top Websites listsposition of the site in a country or category list, its move since last month, new entries
🔗 Similar sites (add-on)20 most similar websites with their visits and similarity score, topic tags, mobile apps
📇 WHOIS and keywords (add-on)domain creation and expiry dates, age, registrar, owner when public; most frequent words of the home page
🏢 Full Similarweb page (add-on)company (employees, revenue range, headquarters), top 10 competitors, audience age and gender, referring sites, social networks, ads, technologies
✉️ Contacts (add-on)e-mail addresses, phone numbers and social profiles found on the website itself

Every field, with an example, is listed in the Output section below. The add-on fields stay empty (null) unless their checkbox is ticked.

✅ Why use Similarweb Traffic Scraper?

  • 🧾 One clean, typed row per site: shares from 0 to 1, visits as whole numbers, months as dates — ready for a spreadsheet or a database, no nested Similarweb format to decode.
  • 🔭 Discover sites, not only look them up: the Top Websites list of any country or category (50 sites each, with position and move), or all main categories at once.
  • 🗺️ A whole market from a few seeds: Add the similar sites as rows turns each domain into its 20 closest competitors, each with its full traffic data.
  • 🎯 Filters before you pay: monthly visits, global rank, visits change, bounce rate, category, main country and excluded words — a site a filter drops is not saved and costs nothing.
  • 🔔 Monthly monitoring built in: tick Only new monthly data and schedule the Actor: a site is returned again only when Similarweb publishes a new month for it.
  • 🧩 Add-ons only when you need them: similar sites, WHOIS, the full Similarweb page, website contacts and a market comparison, each one unticked by default and charged only when it finds something.
  • 🔌 API, scheduling, integrations (Make, Zapier, n8n, Google Sheets…) and JSON/CSV/Excel export via the Apify platform.

🚀 How to scrape Similarweb

  1. Create a free Apify account.
  2. Open Similarweb Traffic Scraper and type your websites in Domains, one per line (e.g. apify.com).
  3. Or paste website URLs, Similarweb pages or a link to a text / CSV file of domains into URLs or a file of domains, or pick Top Websites lists by country or by category to discover sites.
  4. Set Max sites (1,000 by default, 0 = no limit), tick the add-ons you want, then click Start.
  5. Download the dataset in JSON, CSV, Excel or via API.

💰 How much does it cost to scrape Similarweb?

This Actor uses pay per event pricing (the same amounts are in the Pricing tab). You pay for the rows saved with data, and for each add-on only on the sites where it found something. Every add-on is unticked by default.

What you pay forEventPrice per 1,000 (Free plan)
Site row with traffic data (from your list, a Top Websites list or the similar sites added as rows)result$0.72
20 similar sites, tags and apps of a site (20 similar sites)similar-sites$1.39
WHOIS record and home page keywords of a domain (WHOIS and home page keywords)whois$1.79
Contacts found on the website (Contacts from the website): charged only when at least one e-mail address or phone number is found, never for social profiles alonewebsite-contact$4.49
Full Similarweb page of a site (Full Similarweb page)in-depth$2.29
Market comparison sheet (Market comparison of the run)market-stats$3.59
Run startapify-actor-start$0.01 per run

Higher Apify plans pay less per 1,000 (Bronze / Silver / Gold): result $0.68 / $0.65 / $0.61, similar-sites $1.38 / $1.37 / $1.36, whois $1.78 / $1.77 / $1.76, website-contact $4.29 / $3.69 / $3.09, in-depth $2.28 / $2.27 / $2.26, market-stats $3.19 / $2.89 / $2.69. The run start stays $0.01 per run on every plan.

A site Similarweb has no estimate for (hasData: false) is free, and so is a site a filter drops. The WHOIS and Contacts add-ons still look such a site up, and are charged only if they find something. Platform usage (compute, proxy) is included in the price.

Examples (Free plan): 1,000 sites with traffic data and no add-on ≈ $0.73 ($0.72 + $0.01 run start); 100 sites tracked every month with their 20 similar sites ≈ $0.22 a month ($0.072 + $0.139 + $0.01 run start).

⚙️ Input

Look up a few websites:

{
"domains": ["apify.com", "github.com", "similarweb.com"],
"maxItems": 20
}

Discover the most visited sites of two countries and a category, keep the big and growing ones, with their similar sites:

{
"countries": ["France", "de"],
"categories": ["ecommerce-and-shopping/marketplace"],
"minMonthlyVisits": 1000000,
"minTrafficChangePercent": 0,
"excludeCategories": ["adult", "gambling"],
"includeSimilarSites": true,
"maxItemsPerQuery": 20
}

A monthly monitor of your competitors and of their own similar sites:

{
"domains": ["notion.so", "clickup.com"],
"expandSimilarSites": true,
"onlyNew": true,
"stateKey": "productivity-competitors"
}
FieldNotes
domainsWebsites to look up, one per line: a domain (apify.com) or any URL of the site (https://www.apify.com/store is read as apify.com). Similarweb measures whole websites: a sub-domain (docs.apify.com) is looked up as written and usually comes back without figures. Duplicates are looked up once. Up to 10,000 per run.
startUrlsWebsite URLs, Similarweb pages (https://www.similarweb.com/website/apify.com/, https://www.similarweb.com/top-websites/france/) or a linked text / CSV file with one domain per line (up to 100,000 domains).
countriesTop Websites list of a country (name France, code fr, united-states or world): its 50 most visited sites.
categoriesTop Websites list of a category or sub-category (arts-and-entertainment, ecommerce-and-shopping/marketplace): its 50 most visited sites worldwide.
allCategoriesAdd the list of every main Similarweb category (up to 1,700 lists per run in all).
expandSimilarSitesAdd the 20 most similar sites of each domain of your list as rows of their own, with similarToDomain.
maxItemsStop after this many site rows for the whole run (0 = unlimited).
maxItemsPerQueryCap for EACH Top Websites list and for the similar sites of EACH seed domain (0 = no cap).
includeNotFoundKeep a free hasData: false row for each site Similarweb has no estimate for (default on).
includeSimilarSites, includeWhois, includeInDepth, includeWebsiteContacts, includeMarketStatsPaid add-ons, all off by default (see What data and Pricing).
minMonthlyVisits, maxMonthlyVisits, maxGlobalRankOnly sites within this traffic or rank range (0 = no limit). A site Similarweb has no estimate for has no figure, category or country: these filters keep it, as a free row, while Keep sites without data is on.
minTrafficChangePercent, maxTrafficChangePercent, maxBounceRatePercentOnly sites whose visits changed within this range between the last two months, or whose bounce rate is at most this (10 = 10 %). A site with a single month of data has no change to compare and is left out when a change bound is set.
includeCategories, excludeCategoriesOnly, or never, the sites whose category contains one of these words (ecommerce, news, adult).
topCountriesOnly sites whose first country by visits is one of these (us, fr).
excludeKeywordsDrop the sites whose domain, title or description contains one of these words (casino).
onlyNew, stateKey, resetStateMonitoring: only the sites whose month of data was never delivered under this memory key; resetState forgets the memory.
AdvancedproxyConfiguration (Apify proxy by default, included in the price; the residential Apify proxy is not available), maxConcurrency, maxRequestsPerMinute, minRequestIntervalMs, maxRequestRetries, debugLog.

📦 Output

One row, shortened (only the first items of each list, no add-on):

{
"id": "apify.com",
"url": "https://www.similarweb.com/website/apify.com/",
"domain": "apify.com",
"inputValue": "apify.com",
"source": "input",
"listName": null,
"listPosition": null,
"hasData": true,
"title": "Apify: Full-stack web scraping and data extraction platform",
"category": "Computers Electronics and Technology",
"globalRank": 9800,
"countryRank": 9730,
"countryRankCountryCode": "US",
"categoryRank": 272,
"snapshotDate": "2026-09-01",
"totalVisits": 3990936,
"visitsChangePercent": -5.01,
"monthlyVisits": [
{ "month": "2026-08", "visits": 4201537 },
{ "month": "2026-09", "visits": 3990936 }
],
"bounceRate": 0.3595,
"pagesPerVisit": 7.61,
"avgVisitDurationSeconds": 317.5,
"avgVisitDuration": "00:05:17",
"trafficSources": {
"direct": 0.4396,
"organicSearch": 0.341,
"paidSearch": 0.0556,
"organicSocial": 0.0484,
"paidSocial": 0.0021,
"referrals": 0.0581,
"mail": 0.0153,
"displayAds": 0.0056,
"affiliate": 0.0001,
"genAi": 0.0341
},
"topChannel": "direct",
"topCountries": [{ "countryCode": "US", "countryName": "United States", "share": 0.2211, "shareChange": null }],
"topCountryCode": "US",
"topKeywords": [{ "keyword": "apify", "searchVolume": 798490, "estimatedValue": 888360, "cpc": 1.56 }],
"aiTraffic": {
"visits": 123428,
"share": 0.0341,
"referralShare": 0.0309,
"volumeBand": "<1M",
"chatbots": [{ "name": "chatgpt.com", "share": 66.94 }]
},
"isSmallSite": false,
"isDataFromGoogleAnalytics": false,
"similarSites": null,
"whois": null,
"company": null,
"websiteEmails": null,
"scrapedAt": "2026-10-15T09:00:00.000Z"
}

You can download the dataset in various formats such as JSON, HTML, CSV or Excel. Shares are from 0 to 1 (0.3595 = 35.95 %), except the chatbot shares of aiTraffic, in percent of the AI visits.

All 64 fields

FieldsWhat you get
id, url, domain, inputValueapify.com, its Similarweb page, the domain, what you typed
source, listName, listPosition, listRankChange, isNewInListOrigin: input, topList or similarSite; the Top Websites list, the position in it and its move, new entry
similarToDomainthe seed domain of a row added by Add the similar sites as rows
hasData, isSmallSite, isDataFromGoogleAnalyticsfalse when Similarweb has no estimate; small site; data measured by Google Analytics
title, description, category, categoryIdWebsite: home page title, meta description, Computers Electronics and Technology
globalRank, countryRank, countryRankCountryCode, categoryRank, globalCategoryRankRank: 9800, 9730, US, 272
snapshotDate, totalVisits, visitsChangePercent, monthlyVisitsTraffic: 2026-09-01, 3990936, -5.01, visits of each recent month
bounceRate, pagesPerVisit, avgVisitDurationSeconds, avgVisitDurationEngagement: 0.3595, 7.61, 317.5, 00:05:17
trafficSources, topChannelTraffic sources: share per channel, direct
topCountries, topCountryCode, countriesCountCountries: code, name, share (and its change with the full page); US; number of countries (full page)
topKeywordsorganic keywords: search volume, estimated value, cost per click
aiTraffic, aiTopPromptsAI traffic: visits, share, chatbots and their history; prompts typed in AI assistants when Similarweb shows them
screenshotUrl, previewMobileUrl, faviconUrldesktop and mobile screenshots, icon
similarSites, tags, relatedAppsSimilar sites add-on: 20 sites with similarity score and visits, topic tags, mobile apps
whois, keywordDensityWHOIS and keywords add-on: creation, update and expiry dates, age in days, registrar, name servers, status, owner when public; top words and 2- to 5-word phrases of the home page
company, competitors, demographics, audienceInterestsFull page add-on: company, 10 competitors with affinity and category rank, age and gender, other sites and topics of the audience
rankHistory, rankNeighbours, rankChangeFull page add-on: rank of the last months, sites ranked just above and below, rank change
searchSplit, referrals, socialNetworks, advertising, technologiesFull page add-on: organic / paid search, referring and outgoing sites, social networks, ads, technology stack
isInvalidTrafficData, isGoogleAnalyticsDiscrepantFull page add-on: traffic flagged as invalid by Similarweb, Google Analytics far from the estimate
websiteEmails, websitePhones, socialLinksContacts add-on: e-mail addresses of the site's own domain or company (not a web agency's or a font's credit), phone numbers and social profiles found on the website
scrapedAtISO timestamp of the row

With Market comparison of the run, the MARKET_STATS record of the run's key-value store (Output tab) compares the sites of the run: share of visits of each site, leader of each metric, totals and medians, per seed domain and per Top Websites list.

💡 Tips

How to get more results

Combine the sources: your Domains, several Top Websites lists by country and by category, All main categories, and Add the similar sites as rows to grow each seed into its market. A site found by several sources is saved — and charged — once. Set maxItems to 0 for no limit.

How to reduce costs

The price is per site row, so the levers are maxItems, maxItemsPerQuery, the filters (a site a filter drops is free) and Only new monthly data for recurring runs (you never pay twice for the same month of a site). Tick an add-on only when you need its data: each one is charged per site where it found something.

Several sources in one run

Each Top Websites list and each seed domain of Add the similar sites as rows is a list of its own. Set maxItemsPerQuery to give every list its own cap: without it the first lists can use up the whole maxItems budget.

Monitoring: only the new months

Similarweb publishes one estimate per site per month (snapshotDate). Tick Only new monthly data (onlyNew) and schedule the Actor, monthly or weekly: the first run returns everything; each later run skips the sites whose current month was already delivered — they are not saved and not charged — and returns them again once Similarweb publishes the next month. The memory lives in a named key-value store of your account (similarweb-traffic-scraper-seen, up to 150,000 sites per key) and is only updated with sites that really reached the dataset, so a failed run never hides anything. Give each schedule its own stateKey, and tick resetState once to start over. A site without data (hasData: false) is returned once per memory key.

🔌 Integrations and API

Call the Actor via the Apify API, the JavaScript or Python clients, or connect it with integrations and webhooks (Make, Zapier, n8n, Google Sheets, Slack, Airtable…). The dataset can be fetched as JSON or CSV from any tool.

🤖 Use with AI agents (MCP)

AI agents (Claude, ChatGPT, Cursor…) can find and run this Actor through the Apify MCP server, billed to their Apify account like any run. It returns one row of Similarweb traffic data per website. Actor id: nice_dev/similarweb-traffic-scraper; MCP server with this Actor only: https://mcp.apify.com/?tools=fetch-actor-details,nice_dev/similarweb-traffic-scraper.

Smallest input, for a cheap first call:

{
"domains": ["apify.com"],
"maxItems": 1
}

Key output fields: domain, totalVisits, visitsChangePercent, globalRank, category, trafficSources, topCountries and aiTraffic.

Cost: see the pricing section above (one result per site row, add-ons apart). Cap each call with maxItems and, through the API, with the run option maxTotalChargeUsd.

❓ FAQ

The Actor only reads what Similarweb, the domain registries and the websites themselves show publicly to any anonymous visitor. It logs in to nothing. Traffic figures are Similarweb's estimates, not the sites' own numbers. The WHOIS owner and the contacts found on a website can be personal data, which is protected by GDPR: do not store them without a legitimate reason. You are responsible for using the data in compliance with Similarweb's Terms of Use and applicable law. This Actor is not affiliated with Similarweb.

Does it need a login or a proxy?

No login, no Similarweb account. The proxy is included in the price: leave the default setting (the residential Apify proxy is not available). A request Similarweb turns away is retried at once on a new proxy session, up to 10 times on top of the retries (without a proxy, after a pause of 5 seconds, doubled at each retry up to 300 seconds).

Why does a site have no data?

Similarweb only estimates sites with enough visits. A small, new or unknown domain comes back as a free row with hasData: false (untick Keep sites without data to leave them out). A domain Similarweb refuses (not a real domain) is listed in the FAILED_REQUESTS record of the run.

Is the data safe to open in Excel or to show on a web page?

Titles and descriptions are the sites' own words, copied as they are. A text can begin with -, +, = or @: Excel and Google Sheets may read such a cell of a CSV file as a formula. The Actor leaves the text as it is, so that the JSON and the API give the real value: when you open a CSV, import these columns as text. On a web page, escape every field like any text written by a stranger.

Known limitations

  • Traffic figures are Similarweb's monthly estimates: the same for every run of a month, updated when Similarweb publishes the next one.
  • A Top Websites list holds 50 sites; Similarweb shows only 5 for a country and a category together, so the two are kept apart.
  • onlyNew remembers each site's month, not its figures: a site whose figures Similarweb revises within the same month is not returned again.
  • Two runs sharing the same stateKey at the same time may both return the same site.
  • Similarweb sometimes puts its Top Websites lists behind a short browser check: the run then opens a browser by itself and goes on. For such runs, set the run's memory to 2,048 MB or more (Run options > Memory); with less, some lists may fail and are listed in the FAILED_REQUESTS record.
  • Rows are saved as they arrive, not in list order: sort by listPosition to get the order of a Top Websites list. A list asked twice (by its name and by its URL) is read once.
  • Full Similarweb page opens a browser about once for every 15 sites, so expect the run to be slower than without the add-on. The run's memory is set to 2,048 MB by itself when this option is ticked; if you lower the memory to less than 2,048 MB by hand (Run options > Memory), some pages may come back empty.
  • Some domain extensions (.so, for example) have no public registry: whois is then null, and the home page keywords are still given. The add-on is charged only when one of the two is found.

A run that reaches its timeout stops itself about 45 seconds before it: no new page is asked, what it read is saved and, with onlyNew, remembered, and the run ends Succeeded with "Stopped before the run's timeout". Resurrect it to go on from there, or give the next run a longer timeout (Run options).

A run the platform stops without warning (out of memory)

  • Resurrect it: it goes on from where it stood at most a minute before the stop. What it had read since is read again, and the sites already saved are skipped: none is delivered or charged twice, and maxItems still counts them.
  • With onlyNew, the memory is saved after each write (at most once every 2 seconds): resurrect the stopped run and the sites it had saved meanwhile join the memory; leave it stopped for good, and the next run may return the sites of its last 2 seconds once more.

Something doesn't work?

The last line of the log counts the sites saved, filtered out and refused by Similarweb, and the requests that failed after every retry. Those requests are listed, with the reason, in the FAILED_REQUESTS record of the run's key-value store. A run that saved nothing and had failed requests fails, and its last message gives the cause.

If Similarweb changes its data, you are told instead of paying for blank rows. If the first 20 sites read from one source (your domains, the Top Websites lists or the similar sites) all lack the same figure (visits, monthly history, traffic sources, month of data, bounce rate, pages per visit, time on site, global rank, top country or rank change), the run saves nothing more, stops and fails, and its last message names the missing field: at most the first 20 sites of each source are charged. Sites Similarweb has no estimate for are free and not counted: the check waits for sites that have one. A smaller run is checked at its end, from 5 sites: its sites are already saved, and the run fails with the missing field instead of ending green. A Top Websites list whose page no longer holds its sites gives no row, costs nothing and is listed in the FAILED_REQUESTS record.

🛟 Support

Open an issue in the Issues tab with a link to your run: the run log and the FAILED_REQUESTS record of the key-value store show exactly which domains failed and why.