{"id":"a2ede0ad-a7db-417f-bca1-466dbbaec706","shortId":"qPaW9R","kind":"skill","title":"analytics-insights","tagline":"Drive Google Analytics (GA4), Google Tag Manager, Google Search Console, and BigQuery from chat — tracking plans, GA4 reports, key-event (conversion) setup, custom dimensions and metrics, GTM audits, GSC performance, and GA4 BigQuery export queries. Use when the user wants an ana","description":"# Analytics Insights\n\nOperator skill for the Google measurement stack — GA4, GTM, Search Console, and BigQuery — driven directly from chat. Build a tracking plan, run reports, mark conversions, audit existing setup, and query the warehouse without leaving the conversation.\n\n## Out of scope — defer to other skills\n\n| Request | Send them to |\n| --- | --- |\n| Keyword research, AI-search visibility, full SEO audit | `seo-research` (HyperSEO toolkit — broader and richer than GSC for keyword work) |\n| Google Ads campaign performance | `google-ads` (campaign-level) — but GA4-side conversion attribution lives here |\n| Meta / Facebook ads metrics | `meta-ads` |\n| Email program metrics | `email-lifecycle` (provider-side) |\n\nGSC and HyperSEO overlap on search-performance data. Rule of thumb: use GSC here for *the user's own site's* impression / click / position data. Use HyperSEO (in `seo-research`) for keyword research, competitor data, AI-search visibility.\n\n## Requirements\n\n- **Hyper MCP installed and connected.** [https://app.hyperfx.ai/mcp](https://app.hyperfx.ai/mcp)\n- **At least one of these connected** at [https://app.hyperfx.ai/integrations](https://app.hyperfx.ai/integrations):\n  - **Google Analytics** — GA4 reports, custom metrics / dimensions, key-event (conversion) management.\n  - **Google Tag Manager** — tag / trigger / variable / workspace / version management.\n  - **Google Search Console** — search-performance data, sitemaps, URL inspection.\n  - **BigQuery** — SQL queries against the GA4 export (or any other dataset).\n\nIf `google_analytics_run_ga4_report`, `gtm_tag`, `google_search_console_get_performance_data`, and `bigquery_execute_query` are all missing from the agent's tool list, stop and tell the user to enable the Hyper MCP and connect at least one of these integrations.\n\n## Tool surface\n\n| Group | Tools |\n| --- | --- |\n| GA4 — reporting | `google_analytics_run_ga4_report`, `google_analytics_list_accounts`, `google_analytics_list_properties`, `google_analytics_get_property` |\n| GA4 — properties & data streams | `google_analytics_create_ga4_property`, `google_analytics_update_property`, `google_analytics_delete_property`, `google_analytics_create_data_stream`, `google_analytics_list_data_streams`, `google_analytics_get_data_stream`, `google_analytics_update_data_stream`, `google_analytics_delete_data_stream`, `google_analytics_get_data_retention_settings` *(read-only — no update variant in MCP)*, `google_analytics_acknowledge_user_data_collection` |\n| GA4 — key events (conversions) | `google_analytics_create_key_event`, `google_analytics_list_key_events`, `google_analytics_get_key_event`, `google_analytics_update_key_event`, `google_analytics_delete_key_event` |\n| GA4 — custom metrics / dimensions | `google_analytics_create_custom_metric`, `google_analytics_list_custom_metrics`, `google_analytics_get_custom_metric`, `google_analytics_update_custom_metric`, `google_analytics_archive_custom_metric`, `google_analytics_create_custom_dimension`, `google_analytics_list_custom_dimensions`, `google_analytics_get_custom_dimension`, `google_analytics_update_custom_dimension`, `google_analytics_archive_custom_dimension` |\n| GTM (note: prefixed `gtm_*`, **not** `google_tag_manager_*`) | `gtm_account`, `gtm_container`, `gtm_workspace`, `gtm_tag`, `gtm_trigger`, `gtm_variable`, `gtm_built_in_variable`, `gtm_folder`, `gtm_environment`, `gtm_version`, `gtm_version_header`, `gtm_user_permission`, `gtm_client`, `gtm_template`, `gtm_transformation`, `gtm_zone`, `gtm_destination` |\n| Google Search Console | `google_search_console_get_performance_data`, `google_search_console_list_sites`, `google_search_console_list_sitemaps`, `google_search_console_get_sitemap`, `google_search_console_submit_sitemap`, `google_search_console_delete_sitemap`, `google_search_console_submit_url` |\n| BigQuery | `bigquery_execute_query`, `bigquery_insert_rows` |\n\n## Critical rules\n\n1. **GA4 property IDs — arg name differs by tool.** Three patterns: (a) Reporting tools (`run_ga4_report`, `get_property`) take `property_id=\"properties/123456789\"`. (b) Create and list tools (`create_key_event`, `list_key_events`, `create_custom_dimension`, `list_custom_dimensions`, etc.) take `parent=\"properties/123456789\"`. (c) Get/update/delete tools operate on a specific resource and take `name=` with the full resource path (e.g. `\"properties/123456789/keyEvents/12345\"`). All three need the `properties/` prefix in some form — passing a bare numeric ID silently fails. When in doubt, check the tool's schema for which arg is marked `required`.\n2. **Date ranges are inclusive on both ends.** `start_date=\"2026-04-01\"` and `end_date=\"2026-04-30\"` returns 30 days, not 29. Same for relative dates: `7daysAgo` to `today` is 8 days, not 7.\n3. **GA4 sampling kicks in above ~10M events.** For high-volume properties, the GA4 API silently samples results. If precision matters (board reporting, financial attribution), use the **BigQuery GA4 export** instead — see [`references/bigquery-ga4-export.md`](./references/bigquery-ga4-export.md).\n4. **Conversions in GA4 are \"key events\".** GA4 renamed \"conversions\" to \"key events\" in 2024. The tools reflect this — use `google_analytics_create_key_event` to mark an event as a conversion. Don't get confused by older docs.\n5. **GTM changes need a workspace + version + publish.** Tags / triggers / variables created in a workspace are *not live* until the workspace is committed to a new version and that version is published. Use `gtm_workspace` → modify → `gtm_version` (create) → publish.\n6. **GSC data has a 2–3 day lag.** Don't query \"yesterday\" in GSC and expect data — query 3+ days back for stable numbers. GA4 has a 24-48h lag for some metrics.\n7. **Apple Mail Privacy Protection inflates GA4 \"engaged\" sessions from email.** Don't trust email-driven engagement numbers in GA4 alone — cross-reference with the email provider's own click data.\n\n## Workflow — pick the right path\n\nThe skill covers four distinct jobs. Pick first; the workflows are different.\n\n| The user wants… | Path | Reference |\n| --- | --- | --- |\n| A report (\"how did we do last month?\") | Phase R | — |\n| To set up tracking (\"we need to measure X\") | Phase T | [`references/ga4-tracking-plan.md`](./references/ga4-tracking-plan.md) |\n| To audit existing GTM / GA4 (\"why is conversion data wonky?\") | Phase A | [`references/gtm-audit.md`](./references/gtm-audit.md) |\n| Precise / unsampled / cross-source analysis | Phase B | [`references/bigquery-ga4-export.md`](./references/bigquery-ga4-export.md) |\n\n### Phase R — Run a report (most common path)\n\n**Quick-read option:** For instant, no-sampling queries against cached GA4 data, try `google_analytics_query_insights` first — it's faster than the full API path and avoids the ~10M-event sampling threshold. Call it with a `query=` SQL string; the tool description lists available columns and the cached table name. If it returns `\"No data cached\"`, read the `suggestion` field for the workspace-specific table name and retry. For cached GSC data, use `google_search_console_query_insights` with the same pattern. Fall through to Step 4 below for metrics not in the cache.\n\n1. **Confirm the property.** `google_analytics_list_accounts()` → `google_analytics_list_properties(filter=\"parent:accounts/<account_id>\")`. Ask the user to pick if there are multiple. Save the `properties/<id>` for the rest of the conversation.\n2. **Pick the date range.** Always confirm. \"Last 30 days\" is `start_date=\"30daysAgo\"`, `end_date=\"yesterday\"` (avoid `today` — partial-day data is unstable).\n3. **Pick metrics + dimensions.** Don't blast 12 metrics × 6 dimensions in one report — the result is unreadable. Pick the 2–3 metrics that answer the user's question and the 1–2 dimensions that segment them meaningfully.\n4. **Run the report.**\n\n```\ngoogle_analytics_run_ga4_report(\n  property_id=\"properties/123456789\",\n  start_date=\"30daysAgo\",\n  end_date=\"yesterday\",\n  metrics=[\"activeUsers\", \"sessions\", \"conversions\", \"totalRevenue\"],\n  dimensions=[\"sessionDefaultChannelGroup\", \"deviceCategory\"],\n)\n```\n\n5. **Present results as a table.** Always show the raw numbers alongside any interpretation. \"Organic search drove 12,400 sessions (+18% MoM)\" beats \"organic was up.\"\n6. **One follow-on if the data flags it.** If a metric stands out (e.g., conversion rate dropped 40% on mobile), run *one* targeted follow-up report — don't speculate.\n\n#### Common GA4 metrics & dimensions\n\nThe GA4 API uses camelCase names. The most useful:\n\n**Metrics:** `activeUsers`, `sessions`, `screenPageViews`, `bounceRate`, `engagementRate`, `averageSessionDuration`, `conversions`, `eventCount`, `totalRevenue`, `transactions`, `purchaseRevenue`, `userEngagementDuration`.\n\n**Dimensions:** `country`, `city`, `deviceCategory`, `operatingSystem`, `browser`, `sessionDefaultChannelGroup`, `sessionSource`, `sessionMedium`, `sessionCampaignName`, `pagePath`, `eventName`, `date`, `hour`, `landingPage`.\n\nFor the full list, the user can browse the [GA4 Data API reference](https://developers.google.com/analytics/devguides/reporting/data/v1/api-schema).\n\n### Phase T — Set up tracking\n\nThe GA4 API can create properties, data streams, key events, custom metrics, and custom dimensions — but it **can't deploy GTM tags into the page**. That step is GTM-side (or hard-coded in the site). The skill workflow:\n\n1. **Tracking plan first.** Define what events you need to fire, where they fire, and which ones are conversions (key events). Full template in [`references/ga4-tracking-plan.md`](./references/ga4-tracking-plan.md).\n2. **GA4-side setup** — create custom dimensions / metrics, mark key events:\n\n```\ngoogle_analytics_create_custom_dimension(\n  parent=\"properties/123456789\",\n  parameter_name=\"plan_tier\",\n  display_name=\"Plan Tier\",\n  scope=\"EVENT\",\n)\n\ngoogle_analytics_create_key_event(\n  parent=\"properties/123456789\",\n  event_name=\"purchase\",\n  counting_method=\"ONCE_PER_EVENT\",\n)\n```\n\n3. **GTM-side setup** — create/update tags + triggers + variables in a workspace, then version + publish:\n\n```\ngtm_workspace(operation=\"create\", account_id=\"...\", container_id=\"...\", name=\"purchase-tracking-v3\")\n\ngtm_tag(operation=\"create\", workspace_path=\"...\", tag_definition={...})\ngtm_trigger(operation=\"create\", workspace_path=\"...\", trigger_definition={...})\ngtm_variable(operation=\"create\", workspace_path=\"...\", variable_definition={...})\n\ngtm_version(operation=\"create\", workspace_path=\"...\", version_name=\"purchase-tracking-v3\")\n# then publish via the GTM UI or version operation\n```\n\n4. **Validate** — see Phase A.\n\n### Phase A — Audit (the existing setup is broken or suspect)\n\nMost \"our analytics is wrong\" complaints are one of:\n\n| Symptom | Likely cause | How to confirm |\n| --- | --- | --- |\n| Conversion event not appearing in GA4 | Event firing in GTM but not reaching GA4 (wrong measurement ID, blocked by consent gate, ad blocker) | `google_analytics_run_ga4_report` for `eventName=purchase` over the last 7d → if 0, check GTM |\n| Conversion count wildly off | Event firing on every page (not just confirmation), or duplicate tags | Audit GTM tags via `gtm_tag(operation=\"list\")`, check for multiple tags firing on the same trigger |\n| Revenue reported differently in GA4 vs the platform of record | Currency mismatch, refund handling, attribution window | Pull both side-by-side, look for refund / currency rows |\n| Suddenly mobile traffic dropped to ~0 | Tag firing only on desktop trigger, or a recent GTM publish broke the mobile container | `gtm_version(operation=\"list\")` to find recent publishes, diff with previous version |\n| GSC clicks ≠ GA4 organic sessions | Always different — different definitions. Don't try to reconcile exactly. | Expected; document and move on |\n\nDetailed audit walkthrough in [`references/gtm-audit.md`](./references/gtm-audit.md).\n\n### Phase B — BigQuery GA4 export (precision / cross-source analysis)\n\nFor unsampled data, custom attribution, joining GA4 with order-DB / CRM data, or cohort analysis. Requires the GA4 → BigQuery export to be turned on in the GA4 admin (free for standard properties since 2023).\n\n```\nbigquery_execute_query(\n  query=\"\"\"\n    SELECT\n      event_date,\n      COUNT(DISTINCT user_pseudo_id) AS users,\n      COUNTIF(event_name = 'purchase') AS purchases,\n      SUM(IF(event_name = 'purchase', ecommerce.purchase_revenue, 0)) AS revenue\n    FROM `your-project.analytics_123456789.events_*`\n    WHERE _TABLE_SUFFIX BETWEEN '20260401' AND '20260430'\n    GROUP BY event_date\n    ORDER BY event_date\n  \"\"\"\n)\n```\n\nSchema, common queries, and the full attribution-modeling workflow in [`references/bigquery-ga4-export.md`](./references/bigquery-ga4-export.md).\n\n## Output standards\n\n- **Always present numbers as tables**, not prose. \"12,400 sessions, 8.2% bounce, 1.4% conversion\" → markdown table.\n- **Always include the date range** in the report header. \"Apr 1–30, 2026\" — undated numbers are useless.\n- **Always include the property / site** the report came from. Multi-property organizations get burned by this constantly.\n- **Annotate sampling.** If GA4 returns a `samplesReadCount < samplingSpaceSize`, say so explicitly. The user needs to know whether to trust the number for finance / board reporting.\n- **Distinguish \"ratio metric\" from \"summable metric\".** Bounce rate, engagement rate, conversion rate are *ratios* and don't sum — present them as one number, not a column total.\n\n## Critical rules (recap)\n\n1. GA4 property IDs: reporting tools use `property_id=`, create/list tools use `parent=`, get/update/delete tools use `name=` (full resource path).\n2. Date ranges are inclusive on both ends.\n3. Above ~10M events, GA4 API samples — switch to BigQuery export for precision.\n4. Conversions are \"key events\" in GA4 (renamed in 2024).\n5. GTM changes need workspace → version → publish to go live.\n6. GSC has a 2–3 day data lag; GA4 has 24–48h.\n7. MPP inflates GA4 email-engagement metrics.\n\n## Reference workflows\n\n| Reference | When to read |\n| --- | --- |\n| [`references/ga4-tracking-plan.md`](./references/ga4-tracking-plan.md) | Designing what to track — recommended event schema, custom dimensions / metrics, key-event mapping, naming conventions |\n| [`references/gtm-audit.md`](./references/gtm-audit.md) | Auditing an existing GTM container — finding duplicate tags, broken triggers, unused variables, missing consent gates |\n| [`references/bigquery-ga4-export.md`](./references/bigquery-ga4-export.md) | Querying the GA4 BigQuery export — schema, common queries (DAU, funnel, attribution, cohort, retention), join patterns |","tags":["analytics","insights","marketing","skills","hyperfx-ai","agent-skills","ai-agent","claude","claude-code","claude-skills","codex","cursor"],"capabilities":["skill","source-hyperfx-ai","skill-analytics-insights","topic-agent-skills","topic-ai-agent","topic-claude","topic-claude-code","topic-claude-skills","topic-codex","topic-cursor","topic-google-ads","topic-hermes","topic-marketing","topic-mcp","topic-meta-ads"],"categories":["marketing-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/hyperfx-ai/marketing-skills/analytics-insights","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add hyperfx-ai/marketing-skills","source_repo":"https://github.com/hyperfx-ai/marketing-skills","install_from":"skills.sh"}},"qualityScore":"0.462","qualityRationale":"deterministic score 0.46 from registry signals: · indexed on github topic:agent-skills · 24 github stars · SKILL.md body (14,580 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:05:15.184Z","embedding":null,"createdAt":"2026-05-07T13:06:42.539Z","updatedAt":"2026-05-18T19:05:15.184Z","lastSeenAt":"2026-05-18T19:05:15.184Z","tsv":"'+18':1189 '-01':665 '-04':664,670 '-30':671 '-48':832 '/analytics/devguides/reporting/data/v1/api-schema).':1283 '/integrations](https://app.hyperfx.ai/integrations):':211 '/mcp](https://app.hyperfx.ai/mcp)':201 '/references/bigquery-ga4-export.md':723,939,1764,1997 '/references/ga4-tracking-plan.md':915,1355,1962 '/references/gtm-audit.md':929,1659,1980 '0':1539,1606,1732 '1':561,1047,1136,1330,1793,1873 '1.4':1779 '10m':695,980,1903 '10m-event':979 '12':1112,1186,1774 '2':653,808,1080,1125,1137,1356,1893,1938 '2023':1704 '2024':738,1923 '2026':663,669,1795 '20260401':1741 '20260430':1743 '24':831,1945 '29':676 '3':689,809,822,1105,1126,1400,1901,1939 '30':673,1088,1794 '30daysago':1093,1157 '4':724,1039,1143,1473,1914 '40':1214 '400':1187,1775 '48h':1946 '5':763,1169,1924 '6':803,1114,1195,1934 '7':688,838,1947 '7d':1537 '7daysago':681 '8':685 '8.2':1777 'account':313,476,1054,1061,1419 'acknowledg':380 'activeus':1162,1241 'ad':119,124,138,142,1524 'admin':1698 'agent':277 'ai':99,190 'ai-search':98,189 'alon':859 'alongsid':1180 'alway':1085,1175,1639,1767,1783,1800 'ana':46 'analysi':935,1669,1685 'analyt':2,6,47,213,256,306,311,315,319,327,332,336,340,345,350,355,360,365,379,389,394,399,404,409,418,423,428,433,438,443,448,453,458,463,745,964,1052,1056,1148,1369,1386,1490,1527 'analytics-insight':1 'annot':1818 'answer':1129 'api':704,974,1233,1279,1291,1906 'app.hyperfx.ai':200,210 'app.hyperfx.ai/integrations](https://app.hyperfx.ai/integrations):':209 'app.hyperfx.ai/mcp](https://app.hyperfx.ai/mcp)':199 'appear':1506 'appl':839 'apr':1792 'archiv':439,464 'arg':565,649 'ask':1062 'attribut':133,714,1588,1674,1759,2008 'attribution-model':1758 'audit':32,74,104,917,1480,1557,1655,1981 'avail':995 'averagesessiondur':1246 'avoid':977,1097 'b':584,937,1661 'back':824 'bare':634 'beat':1191 'bigqueri':15,37,61,243,269,552,553,556,717,1662,1689,1705,1910,2001 'blast':1111 'block':1520 'blocker':1525 'board':711,1841 'bounc':1778,1849 'bouncer':1244 'broader':110 'broke':1618 'broken':1485,1989 'brows':1275 'browser':1258 'build':66 'built':488 'burn':1814 'c':605 'cach':959,999,1007,1022,1046 'call':984 'came':1807 'camelcas':1235 'campaign':120,126 'campaign-level':125 'caus':1499 'chang':765,1926 'chat':17,65 'check':642,1540,1565 'citi':1255 'click':175,869,1635 'client':504 'code':1323 'cohort':1684,2009 'collect':383 'column':996,1868 'commit':785 'common':946,1227,1753,2004 'competitor':187 'complaint':1493 'confirm':1048,1086,1502,1553 'confus':759 'connect':198,207,292 'consent':1522,1994 'consol':13,59,235,264,515,518,524,529,534,539,544,549,1028 'constant':1817 'contain':478,1421,1621,1985 'convent':1978 'convers':25,73,84,132,222,387,725,733,755,923,1079,1164,1211,1247,1348,1503,1542,1780,1853,1915 'count':1395,1543,1712 'countif':1719 'countri':1254 'cover':878 'creat':328,341,390,419,444,585,589,595,746,774,801,1293,1361,1370,1387,1418,1431,1439,1447,1455 'create/list':1882 'create/update':1405 'critic':559,1870 'crm':1681 'cross':861,933,1667 'cross-refer':860 'cross-sourc':932,1666 'currenc':1584,1599 'custom':27,216,414,420,425,430,435,440,445,450,455,460,465,596,599,1299,1302,1362,1371,1673,1970 'data':160,177,188,239,267,324,342,347,352,357,362,367,382,521,805,820,870,924,961,1006,1024,1102,1202,1278,1295,1672,1682,1941 'dataset':253 'date':654,662,668,680,1083,1092,1095,1156,1159,1265,1711,1747,1751,1786,1894 'dau':2006 'day':674,686,810,823,1089,1101,1940 'db':1680 'defer':88 'defin':1334 'definit':1435,1443,1451,1642 'delet':337,361,410,545 'deploy':1308 'descript':993 'design':1963 'desktop':1611 'destin':512 'detail':1654 'developers.google.com':1282 'developers.google.com/analytics/devguides/reporting/data/v1/api-schema).':1281 'devicecategori':1168,1256 'diff':1630 'differ':567,887,1576,1640,1641 'dimens':28,218,416,446,451,456,461,466,597,600,1108,1115,1138,1166,1230,1253,1303,1363,1372,1971 'direct':63 'display':1379 'distinct':880,1713 'distinguish':1843 'doc':762 'document':1650 'doubt':641 'drive':4 'driven':62,854 'drop':1213,1604 'drove':1185 'duplic':1555,1987 'e.g':621,1210 'ecommerce.purchase':1730 'email':143,147,848,853,865,1952 'email-driven':852 'email-engag':1951 'email-lifecycl':146 'enabl':287 'end':660,667,1094,1158,1900 'engag':845,855,1851,1953 'engagementr':1245 'environ':494 'etc':601 'event':24,221,386,392,397,402,407,412,591,594,696,730,736,748,752,981,1298,1336,1350,1367,1384,1389,1392,1399,1504,1509,1546,1710,1720,1727,1746,1750,1904,1918,1968,1975 'eventcount':1248 'eventnam':1264,1532 'everi':1549 'exact':1648 'execut':270,554,1706 'exist':75,918,1482,1983 'expect':819,1649 'explicit':1828 'export':38,249,719,1664,1690,1911,2002 'facebook':137 'fail':638 'fall':1035 'faster':970 'field':1011 'filter':1059 'financ':1840 'financi':713 'find':1627,1986 'fire':1340,1343,1510,1547,1569,1608 'first':883,967,1333 'flag':1203 'folder':492 'follow':1198,1221 'follow-on':1197 'follow-up':1220 'form':631 'four':879 'free':1699 'full':102,618,973,1270,1351,1757,1890 'funnel':2007 'ga4':7,20,36,56,130,214,248,258,303,308,322,329,384,413,562,576,690,703,718,727,731,828,844,858,920,960,1150,1228,1232,1277,1290,1358,1508,1516,1529,1578,1636,1663,1676,1688,1697,1821,1874,1905,1920,1943,1950,2000 'ga4-side':129,1357 'gate':1523,1995 'get':265,320,351,366,400,429,454,519,535,578,758,1813 'get/update/delete':606,1886 'go':1932 'googl':5,8,11,53,118,123,212,224,233,255,262,305,310,314,318,326,331,335,339,344,349,354,359,364,378,388,393,398,403,408,417,422,427,432,437,442,447,452,457,462,472,513,516,522,527,532,537,542,547,744,963,1026,1051,1055,1147,1368,1385,1526 'google-ad':122 'group':301,1744 'gsc':33,114,152,165,804,817,1023,1634,1935 'gtm':31,57,260,467,470,475,477,479,481,483,485,487,491,493,495,497,500,503,505,507,509,511,764,796,799,919,1309,1318,1402,1415,1428,1436,1444,1452,1468,1512,1541,1558,1561,1616,1622,1925,1984 'gtm-side':1317,1401 'h':833 'handl':1587 'hard':1322 'hard-cod':1321 'header':499,1791 'high':699 'high-volum':698 'hour':1266 'hyper':194,289 'hyperseo':108,154,179 'id':564,582,636,1153,1420,1422,1519,1716,1876,1881 'impress':174 'includ':1784,1801 'inclus':657,1897 'inflat':843,1949 'insert':557 'insight':3,48,966,1030 'inspect':242 'instal':196 'instant':953 'instead':720 'integr':298 'interpret':1182 'job':881 'join':1675,2011 'key':23,220,385,391,396,401,406,411,590,593,729,735,747,1297,1349,1366,1388,1917,1974 'key-ev':22,219,1973 'keyword':96,116,185 'kick':692 'know':1833 'lag':811,834,1942 'landingpag':1267 'last':899,1087,1536 'least':203,294 'leav':82 'level':127 'lifecycl':148 'like':1498 'list':280,312,316,346,395,424,449,525,530,587,592,598,994,1053,1057,1271,1564,1625 'live':134,780,1933 'look':1596 'mail':840 'manag':10,223,226,232,474 'map':1976 'mark':72,651,750,1365 'markdown':1781 'matter':710 'mcp':195,290,377 'meaning':1142 'measur':54,910,1518 'meta':136,141 'meta-ad':140 'method':1396 'metric':30,139,145,217,415,421,426,431,436,441,837,1042,1107,1113,1127,1161,1207,1229,1240,1300,1364,1845,1848,1954,1972 'mismatch':1585 'miss':274,1993 'mobil':1216,1602,1620 'model':1760 'modifi':798 'mom':1190 'month':900 'move':1652 'mpp':1948 'multi':1810 'multi-properti':1809 'multipl':1070,1567 'name':566,615,1001,1018,1236,1376,1380,1393,1423,1459,1721,1728,1889,1977 'need':625,766,908,1338,1831,1927 'new':788 'no-sampl':954 'note':468 'number':827,856,1179,1769,1797,1838,1865 'numer':635 'older':761 'one':204,295,1117,1196,1218,1346,1495,1864 'oper':49,608,1417,1430,1438,1446,1454,1472,1563,1624 'operatingsystem':1257 'option':951 'order':1679,1748 'order-db':1678 'organ':1183,1192,1637,1812 'output':1765 'overlap':155 'page':1313,1550 'pagepath':1263 'paramet':1375 'parent':603,1060,1373,1390,1885 'partial':1100 'partial-day':1099 'pass':632 'path':620,875,891,947,975,1433,1441,1449,1457,1892 'pattern':571,1034,2012 'per':1398 'perform':34,121,159,238,266,520 'permiss':502 'phase':901,912,926,936,940,1284,1476,1478,1660 'pick':872,882,1066,1081,1106,1123 'plan':19,69,1332,1377,1381 'platform':1581 'posit':176 'precis':709,930,1665,1913 'prefix':469,628 'present':1170,1768,1861 'previous':1632 'privaci':841 'program':144 'properti':317,321,323,330,334,338,563,579,581,627,701,1050,1058,1073,1152,1294,1702,1803,1811,1875,1880 'properties/123456789':583,604,1154,1374,1391 'properties/123456789/keyevents/12345':622 'prose':1773 'protect':842 'provid':150,866 'provider-sid':149 'pseudo':1715 'publish':770,794,802,1414,1465,1617,1629,1930 'pull':1590 'purchas':1394,1425,1461,1533,1722,1724,1729 'purchase-tracking-v3':1424,1460 'purchaserevenu':1251 'queri':39,78,245,271,555,814,821,957,965,988,1029,1707,1708,1754,1998,2005 'question':1133 'quick':949 'quick-read':948 'r':902,941 'rang':655,1084,1787,1895 'rate':1212,1850,1852,1854 'ratio':1844,1856 'raw':1178 'reach':1515 'read':371,950,1008,1960 'read-on':370 'recap':1872 'recent':1615,1628 'recommend':1967 'reconcil':1647 'record':1583 'refer':862,892,1280,1955,1957 'references/bigquery-ga4-export.md':722,938,1763,1996 'references/ga4-tracking-plan.md':914,1354,1961 'references/gtm-audit.md':928,1658,1979 'reflect':741 'refund':1586,1598 'relat':679 'renam':732,1921 'report':21,71,215,259,304,309,573,577,712,894,944,1118,1146,1151,1223,1530,1575,1790,1806,1842,1877 'request':92 'requir':193,652,1686 'research':97,107,183,186 'resourc':612,619,1891 'rest':1076 'result':707,1120,1171 'retent':368,2010 'retri':1020 'return':672,1004,1822 'revenu':1574,1731,1734 'richer':112 'right':874 'row':558,1600 'rule':161,560,1871 'run':70,257,307,575,942,1144,1149,1217,1528 'sampl':691,706,956,982,1819,1907 'samplesreadcount':1824 'samplingspaces':1825 'save':1071 'say':1826 'schema':646,1752,1969,2003 'scope':87,1383 'screenpageview':1243 'search':12,58,100,158,191,234,237,263,514,517,523,528,533,538,543,548,1027,1184 'search-perform':157,236 'see':721,1475 'segment':1140 'select':1709 'send':93 'seo':103,106,182 'seo-research':105,181 'session':846,1163,1188,1242,1638,1776 'sessioncampaignnam':1262 'sessiondefaultchannelgroup':1167,1259 'sessionmedium':1261 'sessionsourc':1260 'set':369,904,1286 'setup':26,76,1360,1404,1483 'show':1176 'side':131,151,1319,1359,1403,1593,1595 'side-by-sid':1592 'silent':637,705 'sinc':1703 'site':172,526,1326,1804 'sitemap':240,531,536,541,546 'skill':50,91,877,1328 'skill-analytics-insights' 'sourc':934,1668 'source-hyperfx-ai' 'specif':611,1016 'specul':1226 'sql':244,989 'stabl':826 'stack':55 'stand':1208 'standard':1701,1766 'start':661,1091,1155 'step':1038,1315 'stop':281 'stream':325,343,348,353,358,363,1296 'string':990 'submit':540,550 'sudden':1601 'suffix':1739 'suggest':1010 'sum':1725,1860 'summabl':1847 'surfac':300 'suspect':1487 'switch':1908 'symptom':1497 'tabl':1000,1017,1174,1738,1771,1782 'tag':9,225,227,261,473,482,771,1310,1406,1429,1434,1556,1559,1562,1568,1607,1988 'take':580,602,614 'target':1219 'tell':283 'templat':506,1352 'three':570,624 'threshold':983 'thumb':163 'tier':1378,1382 'today':683,1098 'tool':279,299,302,569,574,588,607,644,740,992,1878,1883,1887 'toolkit':109 'topic-agent-skills' 'topic-ai-agent' 'topic-claude' 'topic-claude-code' 'topic-claude-skills' 'topic-codex' 'topic-cursor' 'topic-google-ads' 'topic-hermes' 'topic-marketing' 'topic-mcp' 'topic-meta-ads' 'total':1869 'totalrevenu':1165,1249 'track':18,68,906,1288,1331,1426,1462,1966 'traffic':1603 'transact':1250 'transform':508 'tri':962,1645 'trigger':228,484,772,1407,1437,1442,1573,1612,1990 'trust':851,1836 'turn':1693 'ui':1469 'undat':1796 'unread':1122 'unsampl':931,1671 'unstabl':1104 'unus':1991 'updat':333,356,374,405,434,459 'url':241,551 'use':40,164,178,715,743,795,1025,1234,1239,1879,1884,1888 'useless':1799 'user':43,169,285,381,501,889,1064,1131,1273,1714,1718,1830 'userengagementdur':1252 'v3':1427,1463 'valid':1474 'variabl':229,486,490,773,1408,1445,1450,1992 'variant':375 'version':231,496,498,769,789,792,800,1413,1453,1458,1471,1623,1633,1929 'via':1466,1560 'visibl':101,192 'volum':700 'vs':1579 'walkthrough':1656 'want':44,890 'warehous':80 'whether':1834 'wild':1544 'window':1589 'without':81 'wonki':925 'work':117 'workflow':871,885,1329,1761,1956 'workspac':230,480,768,777,783,797,1015,1411,1416,1432,1440,1448,1456,1928 'workspace-specif':1014 'wrong':1492,1517 'x':911 'yesterday':815,1096,1160 'your-project.analytics_123456789.events':1736 'zone':510","prices":[{"id":"8adc9508-19ab-4263-8d9e-b8aeb16244d2","listingId":"a2ede0ad-a7db-417f-bca1-466dbbaec706","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"hyperfx-ai","category":"marketing-skills","install_from":"skills.sh"},"createdAt":"2026-05-07T13:06:42.539Z"}],"sources":[{"listingId":"a2ede0ad-a7db-417f-bca1-466dbbaec706","source":"github","sourceId":"hyperfx-ai/marketing-skills/analytics-insights","sourceUrl":"https://github.com/hyperfx-ai/marketing-skills/tree/main/skills/analytics-insights","isPrimary":false,"firstSeenAt":"2026-05-07T13:06:42.539Z","lastSeenAt":"2026-05-18T19:05:15.184Z"}],"details":{"listingId":"a2ede0ad-a7db-417f-bca1-466dbbaec706","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"hyperfx-ai","slug":"analytics-insights","github":{"repo":"hyperfx-ai/marketing-skills","stars":24,"topics":["agent-skills","ai-agent","claude","claude-code","claude-skills","codex","cursor","google-ads","hermes","marketing","mcp","meta-ads","openclaw","seo"],"license":"mit","html_url":"https://github.com/hyperfx-ai/marketing-skills","pushed_at":"2026-05-09T22:58:46Z","description":"Marketing skills for AI agents — paid ads, social media, SEO, competitor research, creative generation, email, analytics, and more. Powered by Hyper MCP.","skill_md_sha":"1d927c97c94ba7b4ab3f36e029bccb3c9d944cce","skill_md_path":"skills/analytics-insights/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/hyperfx-ai/marketing-skills/tree/main/skills/analytics-insights"},"layout":"multi","source":"github","category":"marketing-skills","frontmatter":{"name":"analytics-insights","description":"Drive Google Analytics (GA4), Google Tag Manager, Google Search Console, and BigQuery from chat — tracking plans, GA4 reports, key-event (conversion) setup, custom dimensions and metrics, GTM audits, GSC performance, and GA4 BigQuery export queries. Use when the user wants an analytics audit, a GA4 report, a tracking plan, conversion setup, GTM cleanup, search-performance data, or asks \"how is the site performing?\" or \"are my conversions firing?\"."},"skills_sh_url":"https://skills.sh/hyperfx-ai/marketing-skills/analytics-insights"},"updatedAt":"2026-05-18T19:05:15.184Z"}}