Get the FREE Ultimate OpenClaw Setup Guide →

google-analytics-automation

npx machina-cli add skill davepoon/buildwithclaude/google-analytics-automation --openclaw
Files (1)
SKILL.md
8.9 KB

Google Analytics Automation via Rube MCP

Automate Google Analytics 4 (GA4) reporting and property management through Composio's Google Analytics toolkit via Rube MCP.

Toolkit docs: composio.dev/toolkits/google_analytics

Prerequisites

  • Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
  • Active Google Analytics connection via RUBE_MANAGE_CONNECTIONS with toolkit google_analytics
  • Always call RUBE_SEARCH_TOOLS first to get current tool schemas

Setup

Get Rube MCP: Add https://rube.app/mcp as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.

  1. Verify Rube MCP is available by confirming RUBE_SEARCH_TOOLS responds
  2. Call RUBE_MANAGE_CONNECTIONS with toolkit google_analytics
  3. If connection is not ACTIVE, follow the returned auth link to complete Google OAuth
  4. Confirm connection status shows ACTIVE before running any workflows

Core Workflows

1. List Accounts and Properties

When to use: User wants to discover available GA4 accounts and properties

Tool sequence:

  1. GOOGLE_ANALYTICS_LIST_ACCOUNTS - List all accessible GA4 accounts [Required]
  2. GOOGLE_ANALYTICS_LIST_PROPERTIES - List properties under an account [Required]

Key parameters:

  • pageSize: Number of results per page
  • pageToken: Pagination token from previous response
  • filter: Filter expression for properties (e.g., parent:accounts/12345)

Pitfalls:

  • Property IDs are numeric strings prefixed with 'properties/' (e.g., 'properties/123456')
  • Account IDs are prefixed with 'accounts/' (e.g., 'accounts/12345')
  • Always list accounts first, then properties under each account
  • Pagination required for organizations with many properties

2. Run Standard Reports

When to use: User wants to query metrics and dimensions from GA4 data

Tool sequence:

  1. GOOGLE_ANALYTICS_LIST_PROPERTIES - Get property ID [Prerequisite]
  2. GOOGLE_ANALYTICS_GET_METADATA - Discover available dimensions and metrics [Optional]
  3. GOOGLE_ANALYTICS_CHECK_COMPATIBILITY - Verify dimension/metric compatibility [Optional]
  4. GOOGLE_ANALYTICS_RUN_REPORT - Execute the report query [Required]

Key parameters:

  • property: Property ID (e.g., 'properties/123456')
  • dateRanges: Array of date range objects with startDate and endDate
  • dimensions: Array of dimension objects with name field
  • metrics: Array of metric objects with name field
  • dimensionFilter / metricFilter: Filter expressions
  • orderBys: Sort order configuration
  • limit: Maximum rows to return
  • offset: Row offset for pagination

Pitfalls:

  • Date format is 'YYYY-MM-DD' or relative values like 'today', 'yesterday', '7daysAgo', '30daysAgo'
  • Not all dimensions and metrics are compatible; use CHECK_COMPATIBILITY first
  • Use GET_METADATA to discover valid dimension and metric names
  • Maximum 9 dimensions per report request
  • Row limit defaults vary; set explicitly for large datasets
  • offset is for result pagination, not date pagination

3. Run Batch Reports

When to use: User needs multiple different reports from the same property in one call

Tool sequence:

  1. GOOGLE_ANALYTICS_LIST_PROPERTIES - Get property ID [Prerequisite]
  2. GOOGLE_ANALYTICS_BATCH_RUN_REPORTS - Execute multiple reports at once [Required]

Key parameters:

  • property: Property ID (required)
  • requests: Array of individual report request objects (same structure as RUN_REPORT)

Pitfalls:

  • Maximum 5 report requests per batch call
  • All reports in a batch must target the same property
  • Each individual report has the same dimension/metric limits as RUN_REPORT
  • Batch errors may affect all reports; check individual report responses

4. Run Pivot Reports

When to use: User wants cross-tabulated data (rows vs columns) like pivot tables

Tool sequence:

  1. GOOGLE_ANALYTICS_LIST_PROPERTIES - Get property ID [Prerequisite]
  2. GOOGLE_ANALYTICS_RUN_PIVOT_REPORT - Execute pivot report [Required]

Key parameters:

  • property: Property ID (required)
  • dateRanges: Date range objects
  • dimensions: All dimensions used in any pivot
  • metrics: Metrics to aggregate
  • pivots: Array of pivot definitions with fieldNames, limit, and orderBys

Pitfalls:

  • Dimensions used in pivots must also be listed in top-level dimensions
  • Pivot fieldNames reference dimension names from the top-level list
  • Complex pivots with many dimensions can produce very large result sets
  • Each pivot has its own independent limit and orderBys

5. Run Funnel Reports

When to use: User wants to analyze conversion funnels and drop-off rates

Tool sequence:

  1. GOOGLE_ANALYTICS_LIST_PROPERTIES - Get property ID [Prerequisite]
  2. GOOGLE_ANALYTICS_RUN_FUNNEL_REPORT - Execute funnel analysis [Required]

Key parameters:

  • property: Property ID (required)
  • dateRanges: Date range objects
  • funnel: Funnel definition with steps array
  • funnelBreakdown: Optional dimension to break down funnel by

Pitfalls:

  • Funnel steps are ordered; each step defines a condition users must meet
  • Steps use filter expressions similar to dimension/metric filters
  • Open funnels allow entry at any step; closed funnels require sequential progression
  • Funnel reports may take longer to process than standard reports

6. Manage Key Events

When to use: User wants to view or manage conversion events (key events) in GA4

Tool sequence:

  1. GOOGLE_ANALYTICS_LIST_PROPERTIES - Get property ID [Prerequisite]
  2. GOOGLE_ANALYTICS_LIST_KEY_EVENTS - List all key events for the property [Required]

Key parameters:

  • parent: Property resource name (e.g., 'properties/123456')
  • pageSize: Number of results per page
  • pageToken: Pagination token

Pitfalls:

  • Key events were previously called "conversions" in GA4
  • Property must have key events configured to return results
  • Key event names correspond to GA4 event names

Common Patterns

ID Resolution

Account name -> Account ID:

1. Call GOOGLE_ANALYTICS_LIST_ACCOUNTS
2. Find account by displayName
3. Extract name field (e.g., 'accounts/12345')

Property name -> Property ID:

1. Call GOOGLE_ANALYTICS_LIST_PROPERTIES with filter
2. Find property by displayName
3. Extract name field (e.g., 'properties/123456')

Dimension/Metric Discovery

1. Call GOOGLE_ANALYTICS_GET_METADATA with property ID
2. Browse available dimensions and metrics
3. Call GOOGLE_ANALYTICS_CHECK_COMPATIBILITY to verify combinations
4. Use verified dimensions/metrics in RUN_REPORT

Pagination

  • Reports: Use offset and limit for row pagination
  • Accounts/Properties: Use pageToken from response
  • Continue until pageToken is absent or rowCount reached

Common Dimensions and Metrics

Dimensions: date, city, country, deviceCategory, sessionSource, sessionMedium, pagePath, pageTitle, eventName

Metrics: activeUsers, sessions, screenPageViews, eventCount, conversions, totalRevenue, bounceRate, averageSessionDuration

Known Pitfalls

Property IDs:

  • Always use full resource name format: 'properties/123456'
  • Numeric ID alone will cause errors
  • Resolve property names to IDs via LIST_PROPERTIES

Date Ranges:

  • Format: 'YYYY-MM-DD' or relative ('today', 'yesterday', '7daysAgo', '30daysAgo')
  • Data processing delay means today's data may be incomplete
  • Maximum date range varies by property configuration

Compatibility:

  • Not all dimensions work with all metrics
  • Always verify with CHECK_COMPATIBILITY before complex reports
  • Custom dimensions/metrics have specific naming patterns

Response Parsing:

  • Report data is nested in rows array with dimensionValues and metricValues
  • Values are returned as strings; parse numbers explicitly
  • Empty reports return no rows key (not an empty array)

Quick Reference

TaskTool SlugKey Params
List accountsGOOGLE_ANALYTICS_LIST_ACCOUNTSpageSize, pageToken
List propertiesGOOGLE_ANALYTICS_LIST_PROPERTIESfilter, pageSize
Get metadataGOOGLE_ANALYTICS_GET_METADATAproperty
Check compatibilityGOOGLE_ANALYTICS_CHECK_COMPATIBILITYproperty, dimensions, metrics
Run reportGOOGLE_ANALYTICS_RUN_REPORTproperty, dateRanges, dimensions, metrics
Batch reportsGOOGLE_ANALYTICS_BATCH_RUN_REPORTSproperty, requests
Pivot reportGOOGLE_ANALYTICS_RUN_PIVOT_REPORTproperty, dateRanges, pivots
Funnel reportGOOGLE_ANALYTICS_RUN_FUNNEL_REPORTproperty, dateRanges, funnel
List key eventsGOOGLE_ANALYTICS_LIST_KEY_EVENTSparent, pageSize

Powered by Composio

Source

git clone https://github.com/davepoon/buildwithclaude/blob/main/plugins/all-skills/skills/google-analytics-automation/SKILL.mdView on GitHub

Overview

Automate GA4 reporting and property management using Composio's GA Analytics toolkit via Rube MCP. Create and run standard or batch reports, list accounts and properties, and work with funnels, pivots, and key events.

How This Skill Works

Rube MCP orchestrates GA4 tool calls through a predefined toolkit. Start by verifying tool schemas with RUBE_SEARCH_TOOLS, then establish a GA connection via RUBE_MANAGE_CONNECTIONS using the google_analytics toolkit, and finally execute the appropriate sequence (LIST_ACCOUNTS, LIST_PROPERTIES, GET_METADATA, CHECK_COMPATIBILITY, RUN_REPORT, or BATCH_RUN_REPORTS). Property IDs are formatted as properties/123456 and accounts as accounts/12345 to ensure correct targeting.

When to Use It

  • Discover GA4 accounts and properties to map your workspace.
  • Query metrics and dimensions from GA4 data using a standard report.
  • Discover metadata and validate dimension/metric compatibility before running a report.
  • Run multiple GA4 reports for the same property in one API call (batch reports).
  • Handle large data sets with pagination (pageSize/pageToken) and explicit limits.

Quick Start

  1. Step 1: Verify Rube MCP availability with RUBE_SEARCH_TOOLS.
  2. Step 2: Connect to Google Analytics via RUBE_MANAGE_CONNECTIONS for toolkit 'google_analytics'.
  3. Step 3: Run a workflow such as List Accounts and Properties or Run a Standard Report.

Best Practices

  • Always call RUBE_SEARCH_TOOLS first to fetch current schemas.
  • List accounts before properties to establish a proper hierarchy.
  • Use GET_METADATA to discover valid dimension and metric names before building a query.
  • Run CHECK_COMPATIBILITY prior to RUN_REPORT to avoid incompatible combinations.
  • Explicitly set dateRanges, limits, and pagination parameters to manage large results.

Example Use Cases

  • Audit a new client's GA4 setup by listing all accounts and properties and then selecting a property for reporting.
  • Run a standard GA4 report for a property over the last 30 days with defined dimensions and metrics.
  • Verify metadata and compatibility for a planned funnel or conversion report before execution.
  • Batch-run multiple reports (e.g., user activity, funnel analysis, revenue) for the same property in a single call.
  • Paginate through hundreds of properties to inventory and summarize available GA4 assets.

Frequently Asked Questions

Add this skill to your agents

Related Skills

amplitude-automation

davepoon/buildwithclaude

Automate Amplitude tasks via Rube MCP (Composio): events, user activity, cohorts, user identification. Always search tools first for current schemas.

ab-test-setup

coreyhaines31/marketingskills

When the user wants to plan, design, or implement an A/B test or experiment. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," "hypothesis," "should I test this," "which version is better," "test two versions," "statistical significance," or "how long should I run this test." Use this whenever someone is comparing two approaches and wants to measure which performs better. For tracking implementation, see analytics-tracking. For page-level conversion optimization, see page-cro.

analytics-tracking

coreyhaines31/marketingskills

When the user wants to set up, improve, or audit analytics tracking and measurement. Also use when the user mentions "set up tracking," "GA4," "Google Analytics," "conversion tracking," "event tracking," "UTM parameters," "tag manager," "GTM," "analytics implementation," "tracking plan," "how do I measure this," "track conversions," "attribution," "Mixpanel," "Segment," "are my events firing," or "analytics isn't working." Use this whenever someone asks how to know if something is working or wants to measure marketing results. For A/B test measurement, see ab-test-setup.

mixpanel-automation

davepoon/buildwithclaude

Automate Mixpanel tasks via Rube MCP (Composio): events, segmentation, funnels, cohorts, user profiles, JQL queries. Always search tools first for current schemas.

segment-automation

davepoon/buildwithclaude

Automate Segment tasks via Rube MCP (Composio): track events, identify users, manage groups, page views, aliases, batch operations. Always search tools first for current schemas.

data-analysis

laragentic/agents

Analyze datasets, generate insights, and create visualizations

Sponsor this space

Reach thousands of developers