SEO & Website Traffic (New)

Monitor traffic trends and engagement metrics to identify companies experiencing growth or decline in their digital presence.

SEO & Website Traffic v2 signals reveal which companies are growing or struggling digitally — surfacing both opportunities and pain points across millions of domains.

We pull monthly traffic data, compute month-over-month and 3-month change percentages, and enrich every record with traffic source breakdown, engagement metrics, AI-platform referrals, top organic keywords, and a composite Digital Health Score.

Signals fire when traffic crosses significance thresholds (surges ≥25% MoM, declines ≤−30% MoM, or 3+ consecutive months of directional change). A baseline snapshot is also delivered for every domain so you have a current state record even when no significant change occurred.

SignalSubtypeDescription
Traffic SurgetrafficSurgeSignificant month-over-month traffic increase (≥25% MoM)
Traffic DeclinetrafficDeclineSignificant month-over-month traffic decrease (≤−30% MoM)
Sustained GrowthsustainedGrowth3 consecutive months of traffic increases
Sustained DeclinesustainedDecline3 consecutive months of traffic decreases
BaselinebaselineMonthly snapshot — no significant change detected

A single domain may produce multiple rows per batch when it qualifies for more than one subtype (e.g. a domain that grew 3 consecutive months and spiked +50% MoM will produce both sustainedGrowth and trafficSurge). Dedupe by company.domain if you want one row per company.

{
  "signal_id": "e54ecce5-1b22-4866-a426-564411126d56",
  "batch_id": "cf11373a-8c2f-4f10-b9be-756d51bb51a6",
  "signal_type": "website-traffic",
  "signal_subtype": "trafficDecline",
  "signal_name": "Traffic Decline",
  "detected_at": "2026-04-27T14:01:36.584Z",
  "association": "company",
  "company": {
    "name": "eToro Group",
    "domain": "etoro.com",
    "linkedin_url": "linkedin.com/company/liabilitylimited",
    "industries": ["finance/investing"],
    "employee_count_low": 51,
    "employee_count_high": 200,
    "description": "eToro is a social investing platform..."
  },
  "data": {
    "summary": "etoro.com traffic declined 17% to 21M monthly visits.",
    "relevance": 58.9,
    "traffic": {
      "2026-01-01": 24985794,
      "2026-02-01": 24828714,
      "2026-03-01": 20531003
    },
    "snapshot_date": "2026-03-01T00:00:00+00:00",
    "search_visits": 2053100,
    "direct_visits": 17204981,
    "referral_visits": 656992,
    "social_visits": 41062,
    "mail_visits": 20531,
    "change_mom_pct": -17.3,
    "change_3mo_pct": -17.8,
    "consecutive_months": 3,
    "trend": "consecutive_decline",
    "traffic_band": "major",
    "small_website": false,
    "global_rank": 2429,
    "country_rank": 580,
    "country_rank_country": "GB",
    "category": "finance/investing",
    "category_rank": 3,
    "website_title": "eToro — Social Trading & Investing",
    "website_description": "eToro is a social investing platform...",
    "traffic_sources": {
      "direct": 0.838, "search": 0.100, "referral": 0.032,
      "social": 0.002, "paid": 0.027, "mail": 0.001
    },
    "engagement": {
      "bounce_rate": 0.502,
      "pages_per_visit": 4.752,
      "avg_visit_duration_seconds": 250
    },
    "top_countries": {
      "GB": 0.168, "DE": 0.098, "FR": 0.083, "ES": 0.070, "IT": 0.066
    },
    "top_keywords": [
      { "name": "etoro", "volume": 337690, "cpc": 3.61, "estimated_value": 465410 },
      { "name": "bitcoin", "volume": 3983770, "cpc": null, "estimated_value": 47930 }
    ],
    "ai_traffic": {
      "total_visits": 16624,
      "traffic_share": 0.001,
      "top_platforms": [
        { "name": "chatgpt.com", "rank": 1, "share": 92.4 },
        { "name": "gemini.google.com", "rank": 2, "share": 5.5 },
        { "name": "perplexity.ai", "rank": 3, "share": 1.1 }
      ],
      "top_prompts": [
        "What is eToro and how does it work?",
        "Can I trade cryptocurrencies on eToro?"
      ]
    },
    "search_dependency": "low",
    "search_dependency_detail": "Low search dependency at 10% of total traffic.",
    "brand_strength": "strong",
    "brand_keyword_ratio": "2/5",
    "brand_strength_detail": "Strong brand recognition with 84% direct traffic. Brand keyword ratio: 2/5.",
    "engagement_quality": "high",
    "engagement_quality_score": 76,
    "engagement_quality_detail": "High engagement (76/100) with 50% bounce rate, 4.8 pages per visit, and 250-second average duration.",
    "social_traffic_level": "low",
    "social_traffic_detail": "Low social traffic at 0% of total visits (~41,062 visits).",
    "referral_strength": "weak",
    "referral_strength_detail": "Weak referral strength at 3% of traffic (~656,992 visits).",
    "ai_traffic_level": "minimal",
    "ai_traffic_detail": "Minimal AI traffic at 0.1% (~16,624 visits). Top: chatgpt.com (92%), gemini.google.com (6%), perplexity.ai (1%).",
    "geo_concentration": "diversified",
    "geo_concentration_detail": "Diversified traffic: GB (17%), DE (10%), FR (8%).",
    "digital_health_score": 75,
    "digital_health_label": "excellent",
    "digital_health_detail": "Score 75: Engagement 76/100 (25%), Volume 100/100 (20%), Brand 100/100 (15%), Diversification 40/100 (15%), Rank 100/100 (15%), AI Readiness 1/100 (10%)."
  }
}
FieldTypeDescription
signal_idstring (UUID)Unique identifier for this signal
batch_idstring (UUID)Batch this signal was delivered in
signal_typestringAlways "website-traffic"
signal_subtypeenumtrafficSurge, trafficDecline, sustainedGrowth, sustainedDecline, baseline
signal_namestringHuman-readable name matching the subtype: "Traffic Surge", "Traffic Decline", "Sustained Growth", "Sustained Decline", or "Website Traffic" (baseline)
detected_atstring (ISO 8601)When the signal was detected
associationstringAlways "company"
FieldTypeDescription
company.namestring or nullCompany name (firmographic when available, otherwise page title)
company.domainstringCompany website domain
company.linkedin_urlstring or nullLinkedIn company URL
company.industriesarray[string] or nullIndustry classifications
company.employee_count_lowinteger or nullLower bound of employee count
company.employee_count_highinteger or nullUpper bound of employee count
company.descriptionstring or nullCompany description
FieldTypeDescription
data.summarystringHuman-readable summary of the signal
data.relevancefloatRelevance score (0–100)
data.trafficobjectMonthly visit counts keyed by date (YYYY-MM-DD, always the 1st of the month). Always 3 months. Example: {"2026-01-01": 6234155, "2026-02-01": 5510887, "2026-03-01": 8094470}
data.snapshot_datestring (ISO 8601)Reference month — first day of the latest month in traffic
data.change_mom_pctfloatLatest month-over-month change percentage
data.change_3mo_pctfloat3-month change percentage (newest vs oldest in traffic)
data.trendenumconsecutive_growth, consecutive_decline, or fluctuating
data.consecutive_monthsintegerNumber of consecutive months in the same direction (1–3)
data.traffic_bandenumTraffic size category: emerging, developing, established, major, dominant
data.small_websitebooleanConvenience flag — true for low-traffic / emerging-band domains

Absolute visits attributed to each source for the snapshot month. Sum equals total monthly visits.

FieldTypeDescription
data.search_visitsintegerMonthly visits from search (organic + paid)
data.direct_visitsintegerMonthly visits from direct
data.referral_visitsintegerMonthly visits from referrals
data.social_visitsintegerMonthly visits from social
data.mail_visitsintegerMonthly visits from email
FieldTypeDescription
data.global_rankinteger or nullLower numbers indicate higher traffic
data.country_rankinteger or nullRank within country_rank_country
data.country_rank_countrystring or nullISO 3166-1 alpha-2 country code for the country rank
data.categorystring or nullIndustry category slug (e.g. finance/investing)
data.category_rankinteger or nullRank within category
data.website_titlestring or null<title> tag of the homepage
data.website_descriptionstring or nullMeta description of the homepage

Breakdown of where a company's website visitors originate. Values are proportions (0–1) summing to approximately 1.0.

FieldTypeDescription
data.traffic_sources.directfloat (0–1)Visitors who typed the URL directly, used a bookmark, or clicked a saved link — no external referring source. High direct traffic typically indicates strong brand awareness
data.traffic_sources.searchfloat (0–1)Visitors arriving via search engines. Includes both organic and paid search ads
data.traffic_sources.referralfloat (0–1)Visitors who clicked a link on another website to reach this domain — affiliate links, content partners, news coverage, directory listings
data.traffic_sources.socialfloat (0–1)Visitors arriving from social platforms (LinkedIn, X/Twitter, Facebook, Reddit, etc.), organic and paid
data.traffic_sources.paidfloat (0–1)Visitors from display advertising and paid referral channels — banner ads, ad networks, programmatic display. Does not include paid search (under search) or paid social (under social)
data.traffic_sources.mailfloat (0–1)Visitors who clicked a link in an email, attributed via webmail clients (Gmail, Yahoo Mail, Outlook.com). Desktop email app clicks are typically attributed to direct

Metrics describing how visitors interact with the website once they arrive.

FieldTypeDescription
data.engagement.bounce_ratefloat (0–1)Proportion of visitors who view only one page without interaction. 0.62 = 62% bounce. Typical B2B websites range 0.25–0.70
data.engagement.pages_per_visitfloatAverage number of pages viewed per session
data.engagement.avg_visit_duration_secondsintegerAverage time on site per session in seconds. 0 indicates data unavailable from upstream

Geographic distribution of website visitors. Keys are ISO 3166-1 alpha-2 country codes, values are proportions (0–1). Up to 5 entries. May be empty when geographic data is unavailable.

FieldTypeDescription
data.top_countriesobjectCountry-level traffic distribution. Example: {"US": 0.65, "GB": 0.15, "DE": 0.10}. Only countries with meaningful traffic share are included

Top organic search keywords driving traffic to the domain. Up to 5 entries. May be empty.

FieldTypeDescription
data.top_keywords[].namestringThe keyword phrase
data.top_keywords[].volumeintegerMonthly search volume
data.top_keywords[].cpcfloat or nullAverage cost-per-click for this keyword in paid search (USD). Null for non-commercial keywords
data.top_keywords[].estimated_valueintegerOrganic traffic value (USD) — what equivalent paid traffic would cost

Visits arriving from AI assistants (ChatGPT, Perplexity, Gemini, Claude, etc.) — increasingly important as AI-mediated discovery grows.

FieldTypeDescription
data.ai_traffic.total_visitsintegerVisits from AI platforms in the snapshot month
data.ai_traffic.traffic_sharefloat (0–1)AI traffic as a share of total traffic
data.ai_traffic.top_platformsarray[object]AI platforms driving referrals. Each entry: name (string, full domain e.g. "chatgpt.com"), rank (integer, 1-based position), share (float, percentage 0–100 of AI traffic from this platform). May be empty
data.ai_traffic.top_promptsarray[string]Top user prompts that referred traffic. May be empty

A composite 0–100 score measuring overall digital presence quality. Computed from 6 weighted components: Engagement (25%), Volume (20%), Brand (15%), Diversification (15%), Rank (15%), AI Readiness (10%).

FieldTypeDescription
data.digital_health_scoreinteger (0–100)Composite score
data.digital_health_labelenumpoor (≤29), fair (30–54), good (55–74), excellent (75+)
data.digital_health_detailstringHuman-readable component breakdown showing each sub-score and its weight

Categorical insight bands derived from the raw metrics above. Each exposes a level, a numeric score where applicable, and a human-readable detail string suitable for direct use in outbound messaging or dashboards.

FieldTypeDescription
data.engagement_qualityenumlow, moderate, high — overall visitor engagement tier based on bounce rate, pages per visit, and session duration
data.engagement_quality_scoreinteger (0–100)Numeric engagement composite (average of bounce, pages, and duration sub-scores)
data.engagement_quality_detailstringBreakdown of engagement metrics with the computed score
data.brand_strengthenumweak, moderate, strong — how well-recognized the brand is, based on direct traffic share (≥40% = strong, ≥20% = moderate)
data.brand_keyword_ratiostringHow many of the top 5 organic keywords are brand terms (e.g. "2/5" means 2 of 5 keywords contain the company name or domain)
data.brand_strength_detailstringDirect traffic percentage and brand keyword ratio in context
data.search_dependencyenumlow, moderate, high — what share of traffic relies on search engines (≥50% = high, ≥35% = moderate)
data.search_dependency_detailstringSearch traffic percentage with dependency classification
data.social_traffic_levelenumlow, moderate, high — social platform contribution to total traffic (≥15% = high, ≥5% = moderate)
data.social_traffic_detailstringSocial traffic percentage and estimated visit count
data.referral_strengthenumweak, moderate, strong — third-party referral contribution (≥15% = strong, ≥5% = moderate)
data.referral_strength_detailstringReferral traffic percentage and estimated visit count
data.ai_traffic_levelenumnone, minimal, emerging, significant — AI assistant referral volume (≥5% = significant, ≥1% = emerging, >0 = minimal)
data.ai_traffic_detailstringAI traffic share, visit count, and top referring platforms with their percentages
data.geo_concentrationenum or nullhighly_concentrated, moderately_concentrated, diversified — how geographically spread the audience is (top country ≥50% = highly concentrated, ≥25% = moderate). Null when country data unavailable
data.geo_concentration_detailstring or nullTop countries with their traffic share percentages

"Noticed eToro's traffic declined 17% MoM with 3 consecutive months of decline — and their Digital Health Score still sits at 75 with strong brand strength. That sustained drop paired with high direct traffic suggests they may be pulling back on paid acquisition. Worth reaching out about retention-focused solutions."

  • Refresh: Monthly
  • Coverage: 4M+ companies
  • Best for: Marketing agencies, sales intelligence platforms, SEO tools, advertising platforms, analytics vendors, M&A diligence

Contact [email protected] to get started.