> ## Documentation Index
> Fetch the complete documentation index at: https://squad.so/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Google Analytics

> What agents can do in Google Analytics at each access level, and how to connect, limit, and disconnect Google Analytics.

Connect Google Analytics so your agents can work in your Google Analytics account. You choose an access level for each account, and Squad refuses any agent action outside that level.

## Access levels

Each Google Analytics account has an access level: **Read-only**, **Read + edit**, and **Full access**. Squad refuses any agent action outside that level. You can also narrow or block single agents under **Per-agent access**.

| Level                       | The connect window describes this level as         | Actions agents can use |
| --------------------------- | -------------------------------------------------- | ---------------------- |
| **Read-only** (recommended) | "View Google Analytics reports and data."          | 2 of 69                |
| **Read + edit**             | "View reports and edit GA configuration."          | 69 of 69               |
| **Full access**             | "Full read/write — view, edit, manage everything." | 69 of 69               |

**Read-only** is the recommended level. The connect window selects it for you, and you can choose another level.

The Google Analytics sign-in page asks you to approve full access to your account. This is expected. Squad does not narrow the sign-in. It checks every agent action against the level you chose, and it refuses actions outside that level.

## What agents can do at each level

Each level opens with a short summary in plain tasks, then lists every action it adds, grouped by what the action works on. You do not need to name actions. Ask in plain words, and the agent searches for the matching action.

<Tip>**Find an action.** Open a level and use your browser's find (Ctrl+F, or Cmd+F on a Mac) with a word from the task or part of a slug. Or ask your agent in plain words, for example "What can you do in my Google Analytics account?" The agent can search the Google Analytics actions for you.</Tip>

Each action shows its name, a one-line description where the Google Analytics action catalog has one, and its slug. The slug is the ID that agents use when they call the action.

<AccordionGroup>
  <Accordion title="Read-only (recommended)">
    Agents can use 2 of the 69 Google Analytics actions at this level:

    * View accounts

    All 2 actions at this level:

    | Works on     | Action        | What it does                                    | Slug                             |
    | ------------ | ------------- | ----------------------------------------------- | -------------------------------- |
    | **Accounts** | Get account   | Retrieve a single Account by its resource name. | `GOOGLE_ANALYTICS_GET_ACCOUNT`   |
    |              | List accounts | DEPRECATED: Use ListAccountsV1Beta instead.     | `GOOGLE_ANALYTICS_LIST_ACCOUNTS` |
  </Accordion>

  <Accordion title="Read + edit">
    Agents can use 69 of the 69 Google Analytics actions at this level: everything in **Read-only**, plus:

    * View, create, and run reports
    * View, search, and create lists
    * View links
    * View settings
    * View, create, and archive dimensions
    * View, send, and test events
    * View, search, and create exports
    * View, create, and update properties
    * View, search, and create tasks
    * View audiences
    * View conversion events
    * View filters

    The 67 actions that this level adds to **Read-only**:

    <AccordionGroup>
      <Accordion title="Accounts (2)">
        | Action                 | What it does                                                                  | Slug                                      |
        | ---------------------- | ----------------------------------------------------------------------------- | ----------------------------------------- |
        | List account summaries | Retrieve summaries of all Google Analytics accounts accessible by the caller. | `GOOGLE_ANALYTICS_LIST_ACCOUNT_SUMMARIES` |
        | List accounts v1 beta  | List all Google Analytics accounts accessible by the caller using v1beta API. | `GOOGLE_ANALYTICS_LIST_ACCOUNTS_V1_BETA`  |
      </Accordion>

      <Accordion title="Audiences (2)">
        | Action         | What it does                                                               | Slug                              |
        | -------------- | -------------------------------------------------------------------------- | --------------------------------- |
        | Get audience   | Retrieve a single Audience configuration from a Google Analytics property. | `GOOGLE_ANALYTICS_GET_AUDIENCE`   |
        | List audiences | List Audiences on a property.                                              | `GOOGLE_ANALYTICS_LIST_AUDIENCES` |
      </Accordion>

      <Accordion title="Conversion events (1)">
        | Action                 | What it does                          | Slug                                      |
        | ---------------------- | ------------------------------------- | ----------------------------------------- |
        | List conversion events | List conversion events on a property. | `GOOGLE_ANALYTICS_LIST_CONVERSION_EVENTS` |
      </Accordion>

      <Accordion title="Dimensions (4)">
        | Action                   | What it does                                              | Slug                                        |
        | ------------------------ | --------------------------------------------------------- | ------------------------------------------- |
        | Archive custom dimension | Archive a CustomDimension on a property.                  | `GOOGLE_ANALYTICS_ARCHIVE_CUSTOM_DIMENSION` |
        | Create custom dimension  | Create a CustomDimension for a Google Analytics property. | `GOOGLE_ANALYTICS_CREATE_CUSTOM_DIMENSION`  |
        | Get custom dimension     | Retrieve a single CustomDimension by its resource name.   | `GOOGLE_ANALYTICS_GET_CUSTOM_DIMENSION`     |
        | List custom dimensions   |                                                           | `GOOGLE_ANALYTICS_LIST_CUSTOM_DIMENSIONS`   |
      </Accordion>

      <Accordion title="Events (4)">
        | Action          | What it does                                                            | Slug                               |
        | --------------- | ----------------------------------------------------------------------- | ---------------------------------- |
        | Get key event   | Retrieve a Key Event.                                                   | `GOOGLE_ANALYTICS_GET_KEY_EVENT`   |
        | List key events | Key events are read-only via API.                                       | `GOOGLE_ANALYTICS_LIST_KEY_EVENTS` |
        | Send events     | Send event data to Google Analytics 4 using the Measurement Protocol.   | `GOOGLE_ANALYTICS_SEND_EVENTS`     |
        | Validate events | Validate Measurement Protocol events before sending them to production. | `GOOGLE_ANALYTICS_VALIDATE_EVENTS` |
      </Accordion>

      <Accordion title="Exports (4)">
        | Action                 | What it does                                                 | Slug                                      |
        | ---------------------- | ------------------------------------------------------------ | ----------------------------------------- |
        | Create audience export | Create an audience export for Google Analytics.              | `GOOGLE_ANALYTICS_CREATE_AUDIENCE_EXPORT` |
        | Get audience export    | Get configuration metadata about a specific audience export. | `GOOGLE_ANALYTICS_GET_AUDIENCE_EXPORT`    |
        | List audience exports  | List all audience exports for a property.                    | `GOOGLE_ANALYTICS_LIST_AUDIENCE_EXPORTS`  |
        | Query audience export  | Query a completed audience export.                           | `GOOGLE_ANALYTICS_QUERY_AUDIENCE_EXPORT`  |
      </Accordion>

      <Accordion title="Filters (1)">
        | Action                         | What it does                                      | Slug                                              |
        | ------------------------------ | ------------------------------------------------- | ------------------------------------------------- |
        | List subproperty event filters | List all subproperty event filters on a property. | `GOOGLE_ANALYTICS_LIST_SUBPROPERTY_EVENT_FILTERS` |
      </Accordion>

      <Accordion title="Groups (1)">
        | Action              | What it does                      | Slug                                   |
        | ------------------- | --------------------------------- | -------------------------------------- |
        | List channel groups | List ChannelGroups on a property. | `GOOGLE_ANALYTICS_LIST_CHANNEL_GROUPS` |
      </Accordion>

      <Accordion title="Links (7)">
        | Action                    | What it does                                               | Slug                                         |
        | ------------------------- | ---------------------------------------------------------- | -------------------------------------------- |
        | List adsense links        | List all AdSenseLinks on a property.                       | `GOOGLE_ANALYTICS_LIST_ADSENSE_LINKS`        |
        | List BigQuery links       | List BigQuery Links on a property.                         | `GOOGLE_ANALYTICS_LIST_BIGQUERY_LINKS`       |
        | List dv360 ad links       | List Display & Video 360 advertiser links on a property.   | `GOOGLE_ANALYTICS_LIST_DV360_AD_LINKS`       |
        | List dv360 link proposals | List DisplayVideo360AdvertiserLinkProposals on a property. | `GOOGLE_ANALYTICS_LIST_DV360_LINK_PROPOSALS` |
        | List firebase links       | List FirebaseLinks on a property.                          | `GOOGLE_ANALYTICS_LIST_FIREBASE_LINKS`       |
        | List Google ads links     | List GoogleAdsLinks on a property.                         | `GOOGLE_ANALYTICS_LIST_GOOGLE_ADS_LINKS`     |
        | List search ads360 links  | List all SearchAds360Links on a property.                  | `GOOGLE_ANALYTICS_LIST_SEARCH_ADS360_LINKS`  |
      </Accordion>

      <Accordion title="Lists (7)">
        | Action                         | What it does                                                                                                     | Slug                                              |
        | ------------------------------ | ---------------------------------------------------------------------------------------------------------------- | ------------------------------------------------- |
        | Create audience list           | Create an audience list for later retrieval by initiating a long-running asynchronous request.                   | `GOOGLE_ANALYTICS_CREATE_AUDIENCE_LIST`           |
        | Create recurring audience list | Create a recurring audience list that automatically generates new audience lists daily based on the latest data. | `GOOGLE_ANALYTICS_CREATE_RECURRING_AUDIENCE_LIST` |
        | Get audience list              | Get configuration metadata about a specific audience list.                                                       | `GOOGLE_ANALYTICS_GET_AUDIENCE_LIST`              |
        | Get recurring audience list    | Get configuration metadata about a specific recurring audience list.                                             | `GOOGLE_ANALYTICS_GET_RECURRING_AUDIENCE_LIST`    |
        | List audience lists            | List all audience lists for a specified property to help find and reuse existing lists.                          | `GOOGLE_ANALYTICS_LIST_AUDIENCE_LISTS`            |
        | List recurring audience lists  | List all recurring audience lists for a GA4 property.                                                            | `GOOGLE_ANALYTICS_LIST_RECURRING_AUDIENCE_LISTS`  |
        | Query audience list            | Query an audience list.                                                                                          | `GOOGLE_ANALYTICS_QUERY_AUDIENCE_LIST`            |
      </Accordion>

      <Accordion title="Properties (5)">
        | Action                   | What it does                                         | Slug                                        |
        | ------------------------ | ---------------------------------------------------- | ------------------------------------------- |
        | Create rollup property   | Create a roll-up property.                           | `GOOGLE_ANALYTICS_CREATE_ROLLUP_PROPERTY`   |
        | Get property             | Retrieve a single GA4 Property by its resource name. | `GOOGLE_ANALYTICS_GET_PROPERTY`             |
        | List properties          | DEPRECATED: Use ListPropertiesV1Beta instead.        | `GOOGLE_ANALYTICS_LIST_PROPERTIES`          |
        | List properties filtered | List GA4 properties based on filter criteria.        | `GOOGLE_ANALYTICS_LIST_PROPERTIES_FILTERED` |
        | Update property          | Update an existing GA4 Property.                     | `GOOGLE_ANALYTICS_UPDATE_PROPERTY`          |
      </Accordion>

      <Accordion title="Reports (9)">
        | Action                  | What it does                                                     | Slug                                       |
        | ----------------------- | ---------------------------------------------------------------- | ------------------------------------------ |
        | Batch run pivot reports | Return multiple pivot reports in a batch for a GA4 property.     | `GOOGLE_ANALYTICS_BATCH_RUN_PIVOT_REPORTS` |
        | Batch run reports       | Return multiple analytics data reports in a batch.               | `GOOGLE_ANALYTICS_BATCH_RUN_REPORTS`       |
        | Create custom metric    | Create a custom metric in Google Analytics.                      | `GOOGLE_ANALYTICS_CREATE_CUSTOM_METRIC`    |
        | List calculated metrics |                                                                  | `GOOGLE_ANALYTICS_LIST_CALCULATED_METRICS` |
        | List custom metrics     | List CustomMetrics on a property.                                | `GOOGLE_ANALYTICS_LIST_CUSTOM_METRICS`     |
        | Run funnel report       | Run a GA4 funnel report.                                         | `GOOGLE_ANALYTICS_RUN_FUNNEL_REPORT`       |
        | Run pivot report        | Run a customized pivot report of Google Analytics event data.    | `GOOGLE_ANALYTICS_RUN_PIVOT_REPORT`        |
        | Run realtime report     | Run a customized realtime report of Google Analytics event data. | `GOOGLE_ANALYTICS_RUN_REALTIME_REPORT`     |
        | Run report              | Run a customized GA4 data report.                                | `GOOGLE_ANALYTICS_RUN_REPORT`              |
      </Accordion>

      <Accordion title="Rules (1)">
        | Action                  | What it does                                           | Slug                                       |
        | ----------------------- | ------------------------------------------------------ | ------------------------------------------ |
        | List event create rules | List EventCreateRules configured on a web data stream. | `GOOGLE_ANALYTICS_LIST_EVENT_CREATE_RULES` |
      </Accordion>

      <Accordion title="Schemas (1)">
        | Action                                      | What it does                                                                 | Slug                                                           |
        | ------------------------------------------- | ---------------------------------------------------------------------------- | -------------------------------------------------------------- |
        | List sk ad network conversion value schemas | List SKAdNetworkConversionValueSchema configurations for an iOS data stream. | `GOOGLE_ANALYTICS_LIST_SK_AD_NETWORK_CONVERSION_VALUE_SCHEMAS` |
      </Accordion>

      <Accordion title="Secrets (1)">
        | Action                            | What it does                                         | Slug                                                 |
        | --------------------------------- | ---------------------------------------------------- | ---------------------------------------------------- |
        | List measurement protocol secrets | List MeasurementProtocolSecrets under a data stream. | `GOOGLE_ANALYTICS_LIST_MEASUREMENT_PROTOCOL_SECRETS` |
      </Accordion>

      <Accordion title="Settings (5)">
        | Action                        | What it does                                                                                  | Slug                                             |
        | ----------------------------- | --------------------------------------------------------------------------------------------- | ------------------------------------------------ |
        | Get attribution settings      | Retrieve attribution configuration for a Google Analytics property.                           | `GOOGLE_ANALYTICS_GET_ATTRIBUTION_SETTINGS`      |
        | Get data retention settings   | Retrieve data retention configuration for a Google Analytics property.                        | `GOOGLE_ANALYTICS_GET_DATA_RETENTION_SETTINGS`   |
        | Get data sharing settings     | Retrieve data sharing configuration for a Google Analytics account.                           | `GOOGLE_ANALYTICS_GET_DATA_SHARING_SETTINGS`     |
        | Get Google signals settings   | Retrieve Google Signals configuration settings for a GA4 property.                            | `GOOGLE_ANALYTICS_GET_GOOGLE_SIGNALS_SETTINGS`   |
        | List subproperty sync configs | List SubpropertySyncConfig resources for managing subproperty synchronization configurations. | `GOOGLE_ANALYTICS_LIST_SUBPROPERTY_SYNC_CONFIGS` |
      </Accordion>

      <Accordion title="Snapshots (1)">
        | Action                       | What it does                                                                                                                                 | Slug                                            |
        | ---------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------- |
        | Get property quotas snapshot | Retrieve all property quotas organized by category (corePropertyQuota, funnelPropertyQuota, realtimePropertyQuota) for a given GA4 property. | `GOOGLE_ANALYTICS_GET_PROPERTY_QUOTAS_SNAPSHOT` |
      </Accordion>

      <Accordion title="Streams (1)">
        | Action            | What it does                    | Slug                                 |
        | ----------------- | ------------------------------- | ------------------------------------ |
        | List data streams | List DataStreams on a property. | `GOOGLE_ANALYTICS_LIST_DATA_STREAMS` |
      </Accordion>

      <Accordion title="Tasks (4)">
        | Action             | What it does                                                                                                    | Slug                                  |
        | ------------------ | --------------------------------------------------------------------------------------------------------------- | ------------------------------------- |
        | Create report task | Create a report task as a long-running asynchronous request for customized Google Analytics event data reports. | `GOOGLE_ANALYTICS_CREATE_REPORT_TASK` |
        | Get report task    | Get report metadata about a specific report task.                                                               | `GOOGLE_ANALYTICS_GET_REPORT_TASK`    |
        | List report tasks  | List all report tasks for a Google Analytics property.                                                          | `GOOGLE_ANALYTICS_LIST_REPORT_TASKS`  |
        | Query report task  | Retrieve a report task's content.                                                                               | `GOOGLE_ANALYTICS_QUERY_REPORT_TASK`  |
      </Accordion>

      <Accordion title="Tickets (1)">
        | Action                   | What it does                                              | Slug                                        |
        | ------------------------ | --------------------------------------------------------- | ------------------------------------------- |
        | Provision account ticket | Request a ticket for creating a Google Analytics account. | `GOOGLE_ANALYTICS_PROVISION_ACCOUNT_TICKET` |
      </Accordion>

      <Accordion title="Other actions (5)">
        | Action                          | What it does                                                              | Slug                                               |
        | ------------------------------- | ------------------------------------------------------------------------- | -------------------------------------------------- |
        | Check compatibility             | List dimensions and metrics compatible with a GA4 report request.         | `GOOGLE_ANALYTICS_CHECK_COMPATIBILITY`             |
        | Create expanded data set        | Create an expanded data set for a property.                               | `GOOGLE_ANALYTICS_CREATE_EXPANDED_DATA_SET`        |
        | Get metadata                    | Get metadata for dimensions, metrics, and comparisons for a GA4 property. | `GOOGLE_ANALYTICS_GET_METADATA`                    |
        | List expanded data sets         | List ExpandedDataSets on a property.                                      | `GOOGLE_ANALYTICS_LIST_EXPANDED_DATA_SETS`         |
        | List reporting data annotations | List all Reporting Data Annotations for a specific property.              | `GOOGLE_ANALYTICS_LIST_REPORTING_DATA_ANNOTATIONS` |
      </Accordion>
    </AccordionGroup>
  </Accordion>

  <Accordion title="Full access">
    Agents can use the same 69 actions as at **Read + edit**.
  </Accordion>
</AccordionGroup>

<Tip>At **Read-only**, agents can only list and view your Analytics accounts. Running reports needs **Read + edit** or **Full access**.</Tip>

## Connect Google Analytics

Before you start:

* You need a Google Analytics account that you can sign in to.
* Your Squad subscription must be active. Squad does not connect apps while the subscription is not active.

<Steps>
  <Step title="Open Integrations">
    Open **Settings** > **Integrations**.
  </Step>

  <Step title="Add an integration">
    On the **Connected apps** tab, click **+ Add integration**.
  </Step>

  <Step title="Find Google Analytics">
    Find **Google Analytics** in the catalog and click it. You can type the name in **Search the catalog…**.
  </Step>

  <Step title="Choose an access level">
    Under **Default scope**, choose an access level. This level applies to every agent.
  </Step>

  <Step title="Click Connect Google Analytics">
    Click **Connect Google Analytics**. The Google Analytics sign-in page opens in a new tab.
  </Step>

  <Step title="Sign in to Google Analytics">
    Sign in to Google Analytics and approve the request.
  </Step>
</Steps>

Check that it works: Google Analytics shows under **YOUR CONNECTIONS**, with a row for the account and its access level.

## Change the access level

1. Under **YOUR CONNECTIONS**, find the Google Analytics account.
2. Open the account menu (⋯) and click **Manage scope**.
3. Under **Default scope**, choose the new level.
4. Click **Save access**.

The change does not need a new sign-in. Agents get the new level from their next call.

## Set access for one agent

Every agent uses the account's level unless you set something else for it. You can narrow one agent to a lower level, or block it.

1. Under **YOUR CONNECTIONS**, open the account menu (⋯) on the Google Analytics account.
2. Click **Manage scope**.
3. Under **Per-agent access**, find the agent.
4. Choose the **Default** option to follow the account's level, choose a lower level, or choose **No access**.
5. Click **Save access**.

An agent never gets more than the account's level, even if you choose a higher level for it. Changes apply from the agent's next call. An agent with **No access** does not see the account.

## Use more than one Google Analytics account

Click **+ Account** on the Google Analytics card to connect another account. Agents use the primary account unless they are asked to use a specific one.

* After you click **+ Account**, follow the connect steps above.
* Each account has its own access level.
* The first account you connect becomes the primary account. It shows **★ PRIMARY**.
* To change the primary account, open the account menu (⋯) and click **Make primary**.
* To tell accounts apart, open the account menu (⋯) and click **Rename**.

## Reconnect or disconnect

Reconnect when the connection has expired, or when you need to change what the account can reach on the Google Analytics side:

1. Open the account menu (⋯) and click **Reconnect**.
2. Click **Reauthorize on Google Analytics**.
3. Sign in to Google Analytics and approve the request.

Reconnect signs in to the same account again. It does not add a second connection.

Open the account menu (⋯) on the Google Analytics account and click **Disconnect**. Agents lose access to that account at once.

<Warning>**Disconnect** acts at once, with no confirmation step. If it was the primary account, another connected Google Analytics account becomes primary.</Warning>

## Costs

Google Analytics actions do not use Squad credits. Connected apps never use credits. For what does use credits, see [What Squad costs](/docs/costs).

## Troubleshooting

An agent reports that an action is not allowed on this account.

* Cause: the action is outside the account's access level, or outside the level you set for that agent.
* Fix: choose a higher level in **Manage scope**, or change the agent's row under **Per-agent access**.

An agent says it has no access to Google Analytics, or it does not see the account.

* Cause: the agent is set to **No access** under **Per-agent access**, or the account is not connected.
* Fix: open **Manage scope** and change the agent's row. If the account is missing, connect it again.

Connecting or saving fails with "Your subscription isn't active."

* Cause: your Squad subscription is not active.
* Fix: resubscribe. See [Manage your subscription](/docs/billing).

An agent says the Google Analytics connection has expired.

* Cause: the sign-in for that account is no longer valid.
* Fix: use **Reconnect** on the account.

## Common questions

<AccordionGroup>
  <Accordion title="Can I limit what agents can do in Google Analytics?">
    Each Google Analytics account has an access level: **Read-only**, **Read + edit**, and **Full access**. Squad refuses any agent action outside that level. You can also narrow or block single agents under **Per-agent access**.
  </Accordion>

  <Accordion title="Can I connect more than one Google Analytics account?">
    Click **+ Account** on the Google Analytics card to connect another account. Agents use the primary account unless they are asked to use a specific one.
  </Accordion>

  <Accordion title="How do I disconnect Google Analytics?">
    Open the account menu (⋯) on the Google Analytics account and click **Disconnect**. Agents lose access to that account at once.
  </Accordion>
</AccordionGroup>

## Related pages

<CardGroup cols={2}>
  <Card title="Connect apps" icon="plug" href="/docs/integrations" />

  <Card title="Add an MCP server or an API key" icon="server" href="/docs/custom-integrations">
    Use this when an action you need is not in this app.
  </Card>
</CardGroup>
