{"id":11883,"plugin_id":"plugin_asdk_app_6a77e3320e108191b0955377b387accf","kind":"skill","collection_source":null,"comparison_source":null,"observed_at":"2026-09-30T23:00:28.549Z","digest":"85e2498fd21c0a375afa1907b1f15d223bc36d93814f072bbb440e12936c8642","against":null,"payload":{"name":"google-analytics-report","description":"Report Google Analytics 4 data for a brand. Use for sessions, users, engagement, traffic sources and channels, GA4 events, conversions, or audience breakdowns. Do not use for Google search impressions, clicks or ranking position, which belong to google-search-console-report.","included_files":[{"relative_path":"agents/openai.yaml","size_in_bytes":1250}],"skill_md_contents":"---\nname: google-analytics-report\ndescription: Report Google Analytics 4 data for a brand. Use for sessions, users, engagement, traffic sources and channels, GA4 events, conversions, or audience breakdowns. Do not use for Google search impressions, clicks or ranking position, which belong to google-search-console-report.\n---\n\n# Google Analytics 4 report\n\nReport what people did once they arrived: where they came from, how many, and what they did.\n\nEvery tool here is scoped to one brand and takes `brand_id`.\n\n## Step 1: resolve the brand\n\nCall `list_brands`. If more than one, ask which. Keep `brand_id` for every later call.\n\n## Step 2: confirm the property\n\n1. `list_connectors` to check Google is connected. If not, say so and stop.\n2. `list_ga4_properties` to see the available properties.\n3. If several exist, ask which one. Reporting the wrong property is worse than reporting nothing, because the numbers look plausible and are simply about a different site.\n4. `set_ga4_property` selects it. This changes what every later report measures, so confirm before calling it.\n\n## Step 3: refresh only if asked\n\n`sync_ga4` pulls fresh data and takes time. Otherwise report what is stored and say when it was last synced.\n\n## Step 4: pull the numbers\n\n- `get_ga4_metrics` for the headline: users, sessions, engagement.\n- `get_ga4_traffic_breakdown` for channels and sources.\n- `get_ga4_events` for tracked events and conversions.\n- `get_audience_breakdown` for who they were.\n\n## Step 5: report\n\nState the property and the date range for every number.\n\nRules that keep the report honest:\n\n- **Segment before concluding.** A rise in sessions driven by one referral is a different story from a rise in organic search. Give the channel breakdown alongside the total, never the total alone.\n- **Sessions are not people.** Report users and sessions distinctly and do not use them interchangeably.\n- **Check the window is complete.** GA4 data for the current day is partial. Exclude today, or say it is partial.\n- **Compare equal windows,** and prefer like for like periods. Month against month is cleaner than an arbitrary range against another.\n- **An event is only a conversion if it is configured as one.** Do not promote an ordinary event into a conversion in the write up.\n- Never estimate a missing figure. If it returned nothing, say so.\n\n## Step 6: connect it to the work\n\nThe useful question is not how many sessions there were, but whether the work moved them:\n\n- Organic sessions rising while search impressions are flat suggests better CTR rather than better reach. Confirm with the google-search-console-report skill before claiming either.\n- A traffic rise concentrated on a small number of pages is worth naming. Say which pages.\n- If a channel collapsed, check whether tracking changed before treating it as a real loss. A tag change and a traffic drop look identical in the data.\n\n## Boundaries\n\n- GA4 measures people on the site. It cannot tell you what someone searched to get there, which is Search Console's job.\n- For visibility inside AI assistant answers, use the ai-visibility-report skill.\n- For a combined client or monthly report, use the performance-report skill.\n"},"changes":[],"summary":"First saved snapshot. No earlier version is available for comparison.","summary_kind":"deterministic","summary_metadata":{}}