Competitor Website Traffic Checker avatar

Competitor Website Traffic Checker

Pricing

$3.00 / 1,000 domains

Go to Apify Store
Competitor Website Traffic Checker

Competitor Website Traffic Checker

Competitor website traffic from Semrush's free pages: a domain in, its top competitors out (and theirs on request), each with relevance, monthly visits, countries, traffic sources, search traffic, Authority Score and keywords. A Similarweb alternative. Export to JSON, CSV or Excel, or via API.

Pricing

$3.00 / 1,000 domains

Rating

0.0

(0)

Developer

Steady Scrape

Steady Scrape

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Find a website's competitors and check competitor website traffic in one run, with the figures Semrush publishes on its free website overview pages. Enter your domain: you get the top competitors Semrush lists for it, ranked by relevance, and each competitor's own traffic profile — monthly visits with six months of history, how big it is next to you, top countries, traffic sources, organic and paid search traffic, traffic from AI platforms, Authority Score, backlinks and top keywords. Ask for depth 2 and it also follows the competitors of each competitor, so one domain maps a whole market.

No Semrush account, no login, no browser. Pay only for domains that have traffic data.

What you can do with competitor website traffic data

  • Competitor analysis: who your real competitors are online, how much traffic each one gets, and from which countries and channels.
  • Market mapping: start from one well-known site in a niche and get up to 12 sites around it, each sized by visits.
  • Find similar websites to a prospect, a portfolio company or a site you want to buy ads on.
  • SEO and content research: the keywords and search traffic of every competitor, side by side.
  • Agency pitches and audits: put a client's traffic next to its competitors' in a single table.
  • Lead lists: discover companies that compete with your customers and rank them by traffic and Authority Score.

How competitors are found

Each Semrush overview page lists up to 3 competitors — domains whose audience overlaps — with a relevance score and their visits. The Actor reads your domain's page, then each competitor's page:

  • Depth 1: your domain + its competitors (up to 4 rows per domain, about 80 seconds).
  • Depth 2: also the competitors of each competitor (up to 13 rows per domain, about 4.5 minutes).

A domain is checked and charged once per run, however many times it is found: when two of your domains share a competitor, it is listed under the first one, and a domain you entered always stays one of yours. Each row says where it was found (seedDomain, depth, competitorOf, relevance), and its own competitors list shows every competitor its page names, with relevance and visits.

Input

FieldWhat it does
Your domainsOne per line: gymshark.com, a link to any page of the site, or its Semrush overview link (https://www.semrush.com/website/gymshark.com/overview/). Read as the domain, lowercase and without www.; a domain named twice is checked once. Up to 300 per run.
Depth1 (default): your domains and their competitors. 2: also their competitors' competitors.
Max competitors per domainA cap on the competitor rows found from each of your domains, 1 to 12 (default 12), counted in the order they are found: depth 1 first, by relevance.
{
"domains": ["gymshark.com"],
"depth": 2,
"maxCompetitorsPerSeed": 12
}

For gymshark.com at depth 2 (October 2026): gymshark.com, then athleanx.com, muscleandstrength.com and puregym.com at depth 1, then builtwithscience.com, fitbod.me, hussle.com and menshealth.com at depth 2 — 8 domains, ~3 minutes.

Output

One row per domain (lists shortened). This is athleanx.com, found as a competitor of gymshark.com:

{
"status": "ok",
"reason": null,
"input": "gymshark.com",
"seedDomain": "gymshark.com",
"depth": 1,
"competitorOf": "gymshark.com",
"relevance": 0.21,
"domain": "athleanx.com",
"visitsShareOfSeed": 0.0663,
"semrushUrl": "https://www.semrush.com/website/athleanx.com/overview/",
"brandName": null,
"categories": ["Wellness"],
"dataMonth": "2026-09",
"pageUpdatedAt": "2026-10-14",
"mainCountryCode": "US",
"mainCountryName": "United States",
"globalRank": 56884,
"countryRank": 26690,
"categoryRank": null,
"categoryRankName": null,
"visits": 897793,
"visitsChange": -0.1817,
"desktopVisits": 312024,
"mobileVisits": 585769,
"pagesPerVisit": 2.5218,
"avgVisitDurationSeconds": 271,
"bounceRate": 0.6176,
"visitsHistory": [
{ "month": "2026-09", "visits": 897793, "desktopVisits": 312024, "mobileVisits": 585769 },
{ "month": "2026-08", "visits": 1097153, "desktopVisits": 343661, "mobileVisits": 753492 }
],
"trafficByCountry": [
{ "countryCode": "US", "countryName": "United States", "visits": 363939, "share": 0.4054, "desktopShare": 0.5222, "mobileShare": 0.4778 },
{ "countryCode": "PL", "countryName": "Poland", "visits": 112044, "share": 0.1248, "desktopShare": 0.0164, "mobileShare": 0.9836 }
],
"trafficSources": [
{ "host": "google.com", "channel": "Google organic", "share": 0.44142759, "visits": 137736, "previousMonthVisits": 120529 },
{ "host": "Direct", "channel": null, "share": 0.37522435, "visits": 117079, "previousMonthVisits": 157859 }
],
"trafficDestinations": [{ "host": "youtube.com", "channel": null, "share": 0.11709762, "visits": 2921, "previousMonthVisits": 4388 }],
"aiTraffic": [
{ "host": "gemini.google.com", "name": "Gemini", "visits": 442, "share": 0.0005, "history": [{ "month": "2026-09", "visits": 442 }] },
{ "host": "chatgpt.com", "name": "ChatGPT", "visits": 391, "share": 0.00044, "history": [{ "month": "2026-09", "visits": 391 }] }
],
"organicSearchTraffic": 654094,
"organicSearchTrafficChange": -0.1081,
"paidSearchTraffic": 1858,
"paidSearchTrafficChange": -0.2029,
"searchTrafficHistory": [{ "month": "2026-09", "organic": 654094, "paid": 1858 }],
"authorityScore": 53,
"referringDomains": 4906,
"referringDomainsChange": 0.0496,
"backlinks": 40780,
"backlinksChange": 0.0223,
"backlinksHistory": [{ "month": "2026-09", "backlinks": 40780, "referringDomains": 4906 }],
"keywordsCountryCode": "US",
"topKeywords": [
{ "keyword": "athlean x", "intents": ["informational"], "position": 1, "searchVolume": 14800, "cpcUsd": 0.85, "trafficShare": 0.0405 },
{ "keyword": "chest workout upper", "intents": ["informational"], "position": 1, "searchVolume": 12100, "cpcUsd": 0.08, "trafficShare": 0.0102 }
],
"competitors": [
{ "domain": "muscleandstrength.com", "relevance": 0.28, "visits": 2536820 },
{ "domain": "gymshark.com", "relevance": 0.21, "visits": 13551155 },
{ "domain": "builtwithscience.com", "relevance": 0.19, "visits": 898772 }
],
"scrapedAt": "2026-10-25T07:20:00.000Z"
}

Fields

Shares, rates, changes and relevance are fractions: 0.2989 is 29.89 %, -0.0118 is −1.18 % against the previous month. A section Semrush does not show for a domain is null; a list it shows empty is [].

FieldMeaning
statusok (traffic data, charged), no_traffic (Semrush has a page but no traffic estimate; Authority Score and backlinks included, free), not_found (no Semrush page for the domain, free), invalid (the line names no domain, free), blocked (Semrush refused the run, free), error (the page could not be read, free)
reasonWhy a row is not ok
inputThe line of your input the row comes from (for a competitor, the line of its seed)
seedDomainYour domain this row was found from
depth0 your domain, 1 its competitor, 2 a competitor's competitor
competitorOf, relevanceThe domain whose overview listed this one, and the relevance Semrush showed there (null for your own domains)
domain, semrushUrlThe domain checked and its Semrush page
visitsShareOfSeedThis domain's visits as a fraction of your domain's: 0.0663 is 6.63 %, above 1 when the competitor is bigger
brandName, categoriesBrand and industry categories Semrush assigns
dataMonth, pageUpdatedAtMonth the traffic figures describe (YYYY-MM) and the day Semrush last rebuilt the page
mainCountryCode, mainCountryNameThe domain's main market
globalRank, countryRank, categoryRank, categoryRankNameTraffic ranks: worldwide, in the main country, and in the main category
visits, visitsChange, desktopVisits, mobileVisitsEstimated monthly visits and their change against the previous month
pagesPerVisit, avgVisitDurationSeconds, bounceRateEngagement
visitsHistorySix months of visits, desktop and mobile
trafficByCountryTop countries: visits, share, and desktop/mobile split
trafficSources, trafficDestinationsSites desktop visitors come from and go to next, with channel where Semrush names one (Google organic)
aiTrafficVisits from AI platforms, with six months each
organicSearchTraffic, paidSearchTraffic (+ …Change), searchTrafficHistorySearch traffic and six months of history
authorityScore, referringDomains, backlinks (+ …Change), backlinksHistoryAuthority Score (0–100) and backlink profile, six months
keywordsCountryCode, topKeywordsTop 5 organic keywords in the main country's database: intents, position, monthly search volume, CPC in USD, share of the domain's organic traffic
competitorsEvery competitor this domain's overview lists, with relevance and visits
scrapedAtWhen the row was made (UTC)

Limits, honestly

  • Speed: about 3 domains a minute. Semrush's robots.txt asks every crawler to wait 20 seconds between pages, and this Actor honors it: one page at a time, 20 seconds apart. One domain at depth 1 takes about 80 seconds, at depth 2 about 4.5 minutes; 300 domains at depth 2 fit in the 24-hour run timeout.
  • Up to 3 competitors per page: that is what Semrush's free overview shows. Some domains (notion.so, for one) show none; their row comes alone.
  • Coverage: Semrush publishes free overview pages for popular domains (about a quarter of a million). A domain outside that list, most subdomains and internationalized domains give a free not_found row. Competitors always come from that list, so they have a page.
  • What Semrush locks on these pages is not included: traffic cost, ad spend, branded traffic share and penalty risk.
  • The figures are Semrush's estimates, updated monthly, not the sites' own analytics.

To check the traffic of a list of domains you already have, without competitors, use Semrush Website Traffic Checker, its sibling.

Pricing

US$0.003 per domain with traffic data (US$3 per 1,000), your domains and competitors alike. No start fee. no_traffic, not_found, invalid, blocked and error rows are free. You can cap a run's cost with Apify's maximum cost per run; the Actor stops cleanly when it is reached. A long run that Apify moves to another server picks up where it left off instead of starting over.

The Actor reads the public overview pages Semrush shows to every visitor without an account, on paths Semrush's robots.txt allows to crawlers (Allow: /website/*), at the pace that file asks for. It never logs in, never solves a challenge, and leaves out what the pages lock. This is an unofficial tool, not affiliated with, endorsed by or sponsored by Semrush; Semrush is a trademark of Semrush Inc. The figures are Semrush's estimates. You are responsible for using the data lawfully and in line with Semrush's terms.

Issues and requests

Open an issue on the Actor's page: a domain that looks wrong, a field you need, or anything that breaks.