Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Analyze website traffic, global rank, engagement metrics, and traffic sources for any domain. Use this skill to evaluate affiliate program websites, compare competitor traffic, assess advertiser strength, or understand where an audience comes from. Triggers on: "analyze traffic for [domain]", "how much traffic does [site] get", "compare traffic between [site A] and [site B]", "is [program] worth promoting based on traffic", "traffic analysis", "website analytics for [domain]", "where does [site]
.claude/skills/affitor-traffic-analyzer/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-06 | ✗→✓ | ▲ Improved | 189% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 51% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 126% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 263% | 0% |
| case-13 | ✗→✓ | ▲ Improved | 131% | 0% |
Analyze website traffic, engagement, and traffic sources for any domain. Goes beyond raw data — scores the domain, interprets what the traffic patterns mean for affiliate promotion, and recommends whether the program is worth your time.
A tool returns numbers. This skill returns a verdict.
Use cases:
This skill belongs to Stage S1: Research
competitor-spy identifies competitor sites — analyze their traffic sourcesyamldomains: string[] # (required) 1-5 domains to analyze — "heygen.com", "synthesia.io" compare: boolean # (optional, default: true if 2+ domains) Side-by-side comparison focus: string # (optional, default: "affiliate") # "affiliate" — score from promoter perspective # "competitor" — analyze as a competitor site # "advertiser" — evaluate advertiser health
With SimilarWeb API (see shared/references/social-data-providers.md):
If social_data_config.similarweb is configured:
Without API (web_search fallback):
For each domain:
web_search "[domain] traffic similarweb" → often shows rank and visit estimates in snippetsweb_search "[domain] site traffic statistics" → third-party reportsweb_search "site:[domain]" → Google index count as proxy for content depthweb_search "[domain] alexa rank" OR "[domain] semrush traffic" → alternative sourcesweb_fetch "https://www.similarweb.com/website/[domain]/" → extract visible data from SimilarWeb free page (may be limited)Note: web_search data is approximate. SimilarWeb API provides exact metrics.
For each domain, analyze and interpret:
Traffic Volume:
yamlglobal_rank: number # Lower = better. <10K = major site, <100K = solid, <1M = niche country_rank: number # Rank in primary country monthly_visits: string # "1.2M", "350K", "45K" visits_trend: string # "growing" | "stable" | "declining" (if historical data available)
Engagement Quality:
yamlpages_per_visit: number # >3 = good engagement, <2 = bouncy avg_visit_duration: string # ">3 min" = engaged, "<1 min" = low quality bounce_rate: number # <40% = excellent, 40-60% = normal, >60% = concerning
Traffic Sources Breakdown:
yamldirect: number # % — brand strength indicator search: number # % — SEO strength social: number # % — social media presence referral: number # % — partnership/affiliate ecosystem paid: number # % — ad spend (high paid = advertiser invests in acquisition)
For affiliate promoters (focus: "affiliate"):
Score the domain as an affiliate promotion target:
| Signal | Good (8-10) | OK (5-7) | Red Flag (1-4) | |--------|-------------|----------|-----------------| | Monthly visits | >500K | 50K-500K | <50K | | Bounce rate | <40% | 40-60% | >70% | | Search traffic | >30% | 15-30% | <10% (overly dependent on ads) | | Brand (direct) | >30% | 15-30% | <10% (nobody knows them) | | Pages/visit | >4 | 2-4 | <2 |
Why this matters for affiliates:
For competitor analysis (focus: "competitor"):
For advertiser evaluation (focus: "advertiser"):
Calculate an overall Traffic Health Score (0-100):
traffic_score = (
rank_score × 0.20 + # Based on global rank
volume_score × 0.25 + # Based on monthly visits
engagement_score × 0.25 + # Based on bounce rate + pages/visit + duration
diversity_score × 0.15 + # Traffic source diversity (not overly dependent on one channel)
brand_score × 0.15 # Direct traffic % (brand recognition)
)Score interpretation:
If 2+ domains provided, create side-by-side comparison:
Before presenting output, verify:
If any check fails, fix before delivering. Do not flag checklist to user.
yamloutput_schema_version: "1.0.0" domains_analyzed: - domain: string data_source: "similarweb_api" | "web_search_estimate" metrics: global_rank: number | null country_rank: number | null country: string | null monthly_visits: string pages_per_visit: number | null avg_duration: string | null bounce_rate: number | null traffic_sources: direct: number | null # percentage search: number | null social: number | null referral: number | null paid: number | null traffic_score: number # 0-100 verdict: string # "excellent" | "good" | "fair" | "weak" | "red_flag" interpretation: string # 2-3 sentence analysis based on focus comparison: object | null # if 2+ domains winner: string reasoning: string recommended_next_skill: string
markdown## Traffic Analysis: [Domain(s)] ### Data Source 📊 **[SimilarWeb API | Web search estimates (approximate)]** --- ### [domain1.com] — Traffic Score: [XX]/100 — [Verdict] | Metric | Value | Assessment | |--------|-------|------------| | Global Rank | #XX,XXX | [Good/Fair/Low] | | Monthly Visits | X.XM | [High/Medium/Low] | | Pages/Visit | X.X | [Engaged/Average/Bouncy] | | Avg Duration | Xm Xs | [Good/Low] | | Bounce Rate | XX% | [Healthy/Concerning/High] | **Traffic Sources:**
Direct: ██████████░░░░░░ 35% (strong brand) Search: ████████░░░░░░░░ 28% (good SEO) Social: ████░░░░░░░░░░░░ 15% (social presence) Referral: ███░░░░░░░░░░░░░ 12% (affiliate ecosystem) Paid: ██░░░░░░░░░░░░░░ 10% (moderate ad spend)
**What This Means for You:**
[2-3 sentences interpreting metrics for the user's focus — affiliate/competitor/advertiser]
---
### [If comparing 2+ domains]
### Head-to-Head: [domain1] vs [domain2]
| Metric | [domain1] | [domain2] | Winner |
|--------|-----------|-----------|--------|
| Traffic Score | XX/100 | XX/100 | [domain] |
| Monthly Visits | X.XM | XXK | [domain] |
| Engagement | X.X pg/visit | X.X pg/visit | [domain] |
| Brand Strength | XX% direct | XX% direct | [domain] |
| SEO | XX% search | XX% search | [domain] |
**Verdict:** [domain1] is the stronger affiliate promotion target because [reasoning].
---
### 🎯 Recommendation
[Specific, actionable recommendation based on focus]
### Next Steps
- `affiliate-program-search` — check commission details for [domain]
- `competitor-spy` — deep dive into their affiliate strategy
- `trending-content-scout` — find what content about [domain/product] is performingExample 1: User: "Is HeyGen worth promoting? Check their traffic." → domain: "heygen.com", focus: "affiliate" → SimilarWeb or web_search → Global rank: ~15K, 2.1M monthly visits → Score: 82/100 — "Excellent. HeyGen has strong traffic with healthy engagement. 35% direct traffic shows strong brand recognition. Your referral links benefit from existing brand awareness." → Next: affiliate-program-search for HeyGen commission details
Example 2: User: "Compare Notion vs ClickUp vs Monday.com traffic for my productivity niche" → domains: "notion.so", "clickup.com", "monday.com"] → Analyze all 3, side-by-side comparison → Winner: Notion (highest traffic, best engagement) → But: ClickUp has highest referral % (12%) = strongest affiliate ecosystem → may convert better
Example 3: User: "I found this small SaaS tool — screenpal.com. Is the advertiser legit?" → domain: "screenpal.com", focus: "advertiser" → Global rank: ~180K, ~300K monthly visits → Score: 55/100 — "Fair. Niche tool with moderate traffic. Growing steadily. Low paid traffic (2%) suggests bootstrapped. Engagement is good (3.8 pages/visit). Worth promoting if commission is strong, but don't expect brand-name conversion rates."
When this skill produces unexpected, incomplete, or incorrect output, generate a skill_feedback block (see shared/references/feedback-protocol.md for full schema).
Skill-specific failure modes:
data_quality, note domain.data_quality, severity: medium.wrong_output.Auto-detect triggers:
traffic_score is 0 or null for a well-known domaintraffic_sources percentages are nullReport issues: GitHub Issues | Discussions
shared/references/social-data-providers.md — SimilarWeb API configurationshared/references/flywheel-connections.md — master flywheel connection mapshared/references/affiliate-glossary.md — affiliate marketing terminologyshared/references/feedback-protocol.md — issue detection and reporting standardaffiliate-program-search (S1) — traffic score as program evaluation factorcompetitor-spy (S1) — traffic sources reveal competitor strategyniche-opportunity-finder (S1) — traffic data validates niche demandcontent-angle-ranker (S1) — traffic source breakdown informs platform prioritizationtrending-content-scout (S1) — social traffic % hints at which platforms to scoutcompetitor-spy (S1) — competitor domains to analyzeaffiliate-program-search (S1) — program URLs to evaluateniche-opportunity-finder (S1) — top program domains in a nicheperformance-report shows your referral contribution to the advertiser → compare your traffic impact over time → prioritize programs where you move the needleyamlchain_metadata: skill_slug: "traffic-analyzer" stage: "research" timestamp: string suggested_next: - "affiliate-program-search" - "competitor-spy" - "trending-content-scout"
Other measured skills in the registry, with their headline benchmark lift.