{"id":"aecc020e-84f5-4c61-abdf-f9650ee5edcb","shortId":"8fN7Nr","kind":"skill","title":"analyzing-web-traffic","tagline":"Analyzes web analytics traffic patterns and user behavior. Use when asked about pageviews, sessions, traffic sources, or website user behavior.","description":"# Analyzing Web Traffic\n\n## Quick Start\n\nTo analyze web traffic:\n1. Query pageview and session data via the Altertable MCP server\n2. Compare the current period against a previous period (WoW, MoM, or YoY)\n3. Segment by traffic source, device, geography, or page\n4. Surface anomalies, trends, and actionable findings\n\n## When to Use This Skill\n\n- User asks about website traffic, pageviews, or sessions\n- Investigating traffic spikes, drops, or trends\n- Comparing traffic across time periods or segments\n- Evaluating traffic source mix or user engagement\n\n## Analysis Workflow\n\n### Step 1: Determine Scope and Time Frame\n\nAsk the user (or infer from context):\n- **Period**: What date range to analyze (default to last 7 days if unspecified)\n- **Comparison**: What to compare against (previous period of equal length)\n- **Focus**: Overall traffic, a specific source, a specific page, or a segment\n\n### Step 2: Query Traffic Data\n\nUse the Altertable MCP server to fetch web analytics data. The primary tool returns the top 50 pages by pageviews, visitors, and sessions grouped by week, with breakdowns by URL, referrer, country, UTM source/campaign, device, and device type.\n\nFor deeper analysis, complement with SQL queries against the lakehouse to compute:\n- **Volume**: pageviews, sessions, unique visitors\n- **Engagement**: bounce rate, pages per session, avg session duration\n- **Acquisition**: traffic by source/medium, referrer breakdown\n\nAlways pull both the current period and the comparison period so you can compute deltas.\n\n### Step 3: Segment the Data\n\nBreak down by at least one dimension to find where changes originate:\n- **Traffic source**: organic, paid, direct, social, referral, email\n- **Device type**: desktop, mobile, tablet\n- **Geography**: country, region\n- **Page or section**: top pages, landing pages, exit pages\n\nWhen a top-level metric moves, drill into segments to isolate which segment drove the change.\n\n### Step 4: Identify Patterns and Anomalies\n\nLook for:\n- **Trends**: sustained directional movement across multiple periods\n- **Anomalies**: single-period spikes or drops that break the pattern\n- **Shifts in mix**: a source growing as a share even if total traffic is flat\n\nQuantify every observation with absolute numbers and percentage change.\n\n### Step 5: Summarize and Recommend\n\nPresent findings with:\n- The metric, its value, and the delta vs. the comparison period\n- Which segment is responsible for the change\n- A hypothesis for why (site changes, seasonality, campaigns)\n- A suggested next step or action when applicable\n\n## Time Period Comparison Guide\n\n| Comparison | When to Use |\n|------------|-------------|\n| WoW (week-over-week) | Short-term monitoring, recent changes |\n| MoM (month-over-month) | Growth tracking, campaign evaluation |\n| YoY (year-over-year) | Seasonal businesses, long-term trends |\n\nAlways compare equal-length periods. When comparing WoW, align on the same day of week. When comparing MoM, account for differing month lengths.\n\n## Segmentation Priorities\n\nWhen the user does not specify a segment, default to this order:\n1. **Traffic source** -- most common driver of traffic changes\n2. **Device type** -- surfaces mobile vs. desktop divergence\n3. **Top pages** -- pinpoints content driving volume shifts\n\nOnly add geography or other dimensions if the first pass does not explain the change.\n\n## Common Pitfalls\n\n- **Reporting totals without comparison**: always include a delta to a prior period so the user can gauge significance\n- **Ignoring seasonality**: a WoW drop on a holiday week is expected, not alarming -- flag it rather than over-interpreting\n- **Mixing up pageviews and sessions**: these measure different things; present both when discussing volume\n- **Not drilling into segments**: a flat total can hide offsetting gains and losses across sources or pages\n- **Presenting numbers without context**: raw counts are meaningless without comparison, percentage change, or benchmarks\n- **Forgetting to check for tracking issues**: sudden drops to zero or impossible spikes often indicate instrumentation problems, not real traffic changes\n\n## Reference Files\n\n- [Web events reference](references/web-events.md)\n- [Session analysis](references/session-analysis.md)\n- [Trend comparison](references/trend-comparison.md)","tags":["analyzing","web","traffic","skills","altertable-ai","agent-skills","ai-agents","altertable"],"capabilities":["skill","source-altertable-ai","skill-analyzing-web-traffic","topic-agent-skills","topic-ai-agents","topic-altertable"],"categories":["skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/altertable-ai/skills/analyzing-web-traffic","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add altertable-ai/skills","source_repo":"https://github.com/altertable-ai/skills","install_from":"skills.sh"}},"qualityScore":"0.453","qualityRationale":"deterministic score 0.45 from registry signals: · indexed on github topic:agent-skills · 7 github stars · SKILL.md body (4,297 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T19:14:19.513Z","embedding":null,"createdAt":"2026-05-18T13:21:54.079Z","updatedAt":"2026-05-18T19:14:19.513Z","lastSeenAt":"2026-05-18T19:14:19.513Z","tsv":"'1':34,110,476 '2':45,159,485 '3':58,249,493 '4':67,308 '5':358 '50':179 '7':132 'absolut':352 'account':457 'acquisit':227 'across':95,319,583 'action':72,396 'add':502 'alarm':548 'align':447 'altert':42,165 'alway':233,438,522 'analysi':107,203,629 'analyt':7,171 'analyz':2,5,25,31,128 'analyzing-web-traff':1 'anomali':69,312,322 'applic':398 'ask':15,80,116 'avg':224 'behavior':12,24 'benchmark':600 'bounc':219 'break':253,330 'breakdown':190,232 'busi':433 'campaign':390,425 'chang':263,306,356,382,388,417,484,515,598,621 'check':603 'common':480,516 'compar':46,93,139,439,445,455 'comparison':136,241,374,401,403,521,596,632 'complement':204 'comput':212,246 'content':497 'context':122,590 'count':592 'countri':194,279 'current':48,237 'data':39,162,172,252 'date':125 'day':133,451 'deeper':202 'default':129,472 'delta':247,371,525 'desktop':275,491 'determin':111 'devic':63,197,199,273,486 'differ':459,563 'dimens':259,506 'direct':269,317 'discuss':568 'diverg':492 'drill':297,571 'drive':498 'driver':481 'drop':90,328,540,608 'drove':304 'durat':226 'email':272 'engag':106,218 'equal':144,441 'equal-length':440 'evalu':100,426 'even':342 'event':625 'everi':349 'exit':288 'expect':546 'explain':513 'fetch':169 'file':623 'find':73,261,363 'first':509 'flag':549 'flat':347,575 'focus':146 'forget':601 'frame':115 'gain':580 'gaug':534 'geographi':64,278,503 'group':186 'grow':338 'growth':423 'guid':402 'hide':578 'holiday':543 'hypothesi':384 'identifi':309 'ignor':536 'imposs':612 'includ':523 'indic':615 'infer':120 'instrument':616 'interpret':555 'investig':87 'isol':301 'issu':606 'lakehous':210 'land':286 'last':131 'least':257 'length':145,442,461 'level':294 'long':435 'long-term':434 'look':313 'loss':582 'mcp':43,166 'meaningless':594 'measur':562 'metric':295,366 'mix':103,335,556 'mobil':276,489 'mom':55,418,456 'monitor':415 'month':420,422,460 'month-over-month':419 'move':296 'movement':318 'multipl':320 'next':393 'number':353,588 'observ':350 'offset':579 'often':614 'one':258 'order':475 'organ':267 'origin':264 'over-interpret':553 'overal':147 'page':66,154,180,221,281,285,287,289,495,586 'pageview':17,36,84,182,214,558 'paid':268 'pass':510 'pattern':9,310,332 'per':222 'percentag':355,597 'period':49,53,97,123,142,238,242,321,325,375,400,443,529 'pinpoint':496 'pitfal':517 'present':362,565,587 'previous':52,141 'primari':174 'prior':528 'prioriti':463 'problem':617 'pull':234 'quantifi':348 'queri':35,160,207 'quick':28 'rang':126 'rate':220 'rather':551 'raw':591 'real':619 'recent':416 'recommend':361 'refer':622,626 'references/session-analysis.md':630 'references/trend-comparison.md':633 'references/web-events.md':627 'referr':193,231,271 'region':280 'report':518 'respons':379 'return':176 'scope':112 'season':389,432,537 'section':283 'segment':59,99,157,250,299,303,377,462,471,573 'server':44,167 'session':18,38,86,185,215,223,225,560,628 'share':341 'shift':333,500 'short':413 'short-term':412 'signific':535 'singl':324 'single-period':323 'site':387 'skill':78 'skill-analyzing-web-traffic' 'social':270 'sourc':20,62,102,151,266,337,478,584 'source-altertable-ai' 'source/campaign':196 'source/medium':230 'specif':150,153 'specifi':469 'spike':89,326,613 'sql':206 'start':29 'step':109,158,248,307,357,394 'sudden':607 'suggest':392 'summar':359 'surfac':68,488 'sustain':316 'tablet':277 'term':414,436 'thing':564 'time':96,114,399 'tool':175 'top':178,284,293,494 'top-level':292 'topic-agent-skills' 'topic-ai-agents' 'topic-altertable' 'total':344,519,576 'track':424,605 'traffic':4,8,19,27,33,61,83,88,94,101,148,161,228,265,345,477,483,620 'trend':70,92,315,437,631 'type':200,274,487 'uniqu':216 'unspecifi':135 'url':192 'use':13,76,163,406 'user':11,23,79,105,118,466,532 'utm':195 'valu':368 'via':40 'visitor':183,217 'volum':213,499,569 'vs':372,490 'web':3,6,26,32,170,624 'websit':22,82 'week':188,409,411,453,544 'week-over-week':408 'without':520,589,595 'workflow':108 'wow':54,407,446,539 'year':429,431 'year-over-year':428 'yoy':57,427 'zero':610","prices":[{"id":"8dc87f41-3a5c-4b56-aad4-83da0711b180","listingId":"aecc020e-84f5-4c61-abdf-f9650ee5edcb","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"altertable-ai","category":"skills","install_from":"skills.sh"},"createdAt":"2026-05-18T13:21:54.079Z"}],"sources":[{"listingId":"aecc020e-84f5-4c61-abdf-f9650ee5edcb","source":"github","sourceId":"altertable-ai/skills/analyzing-web-traffic","sourceUrl":"https://github.com/altertable-ai/skills/tree/main/skills/analyzing-web-traffic","isPrimary":false,"firstSeenAt":"2026-05-18T13:21:54.079Z","lastSeenAt":"2026-05-18T19:14:19.513Z"}],"details":{"listingId":"aecc020e-84f5-4c61-abdf-f9650ee5edcb","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"altertable-ai","slug":"analyzing-web-traffic","github":{"repo":"altertable-ai/skills","stars":7,"topics":["agent-skills","ai-agents","altertable"],"license":"mit","html_url":"https://github.com/altertable-ai/skills","pushed_at":"2026-05-14T10:34:10Z","description":"Agent Skills for Altertable","skill_md_sha":"919ed7695038da143ebd5526f14aff31b19ac49e","skill_md_path":"skills/analyzing-web-traffic/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/altertable-ai/skills/tree/main/skills/analyzing-web-traffic"},"layout":"multi","source":"github","category":"skills","frontmatter":{"name":"analyzing-web-traffic","description":"Analyzes web analytics traffic patterns and user behavior. Use when asked about pageviews, sessions, traffic sources, or website user behavior.","compatibility":"Requires Altertable MCP server"},"skills_sh_url":"https://skills.sh/altertable-ai/skills/analyzing-web-traffic"},"updatedAt":"2026-05-18T19:14:19.513Z"}}