> For the complete documentation index, see [llms.txt](https://docs.riff.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.riff.ai/archive/integrations-legacy-saas-connectors/native-integrations/google-sheets.md).

# Google Sheets

Connect **Google Sheets** to Riff to power spreadsheet-backed dashboards, quality checks, and data workflows. Riff handles the OAuth, stores tokens securely, and wires Sheets into your apps, automations, and agents.

### What you can build (fast)

* KPI dashboards from a “Metrics” sheet
* Budget/variance monitors with Slack alerts
* Lead scoring and enrichment workflows

<table data-view="cards"><thead><tr><th align="center"></th><th></th><th data-hidden data-card-cover data-type="image">Cover image</th></tr></thead><tbody><tr><td align="center">KPI Board from Sheets</td><td>Build a KPI Board from Google Sheets that reads a 'Metrics' sheet, calculates weekly KPIs (growth, CAC, ROAS), and renders charts with a downloadable CSV. Trigger daily at 08:00 and via Refresh.</td><td></td></tr><tr><td align="center">Budget Variance Monitor</td><td>Create a Budget Variance Monitor that reads actuals vs budget from Google Sheets, flags variances over 10%, and posts a summary to Slack with a CSV attachment. Trigger every weekday at 09:00.</td><td></td></tr><tr><td align="center">Lead Scoring Dashboard</td><td>Create a Lead Scoring Dashboard that reads a 'Leads' sheet, computes scores using rules, highlights hot leads, and writes back a 'Score' column. Trigger on button.</td><td></td></tr></tbody></table>

{% columns %}
{% column valign="middle" %}

<p align="center"><a href="https://riff.new/home?prompt-template=Build%20a%20KPI%20Board%20from%20Google%20Sheets%20that%20reads%20a%20%27Metrics%27%20sheet%2C%20calculates%20weekly%20KPIs%20%28growth%2C%20CAC%2C%20ROAS%29%2C%20and%20renders%20charts%20with%20a%20downloadable%20CSV.%20Trigger%20daily%20at%2008%3A00%20and%20via%20Refresh" class="button primary">Riff this App</a></p>
{% endcolumn %}

{% column %}

<p align="center"><a href="https://riff.new/home?prompt-template=Create%20a%20Budget%20Variance%20Monitor%20that%20reads%20actuals%20vs%20budget%20from%20Google%20Sheets%2C%20flags%20variances%20over%2010%25%2C%20and%20posts%20a%20summary%20to%20Slack%20with%20a%20CSV%20attachment.%20Trigger%20every%20weekday%20at%2009%3A00" class="button primary">Riff this App</a></p>
{% endcolumn %}

{% column %}

<p align="center"><a href="https://riff.new/home?prompt-template=Create%20a%20Lead%20Scoring%20Dashboard%20that%20reads%20a%20%27Leads%27%20sheet%2C%20computes%20scores%20using%20rules%2C%20highlights%20hot%20leads%2C%20and%20writes%20back%20a%20%27Score%27%20column.%20Trigger%20on%20button" class="button primary">Riff this App</a></p>
{% endcolumn %}
{% endcolumns %}

### Prerequisites

* Google account with access to the relevant spreadsheets
* A Riff workspace (sign-in at useriff.ai)

### Connect Google Sheets to Riff (two easy ways)

**Let the agent drive** — When a task needs Sheets, the agent prompts you to connect; approve once; quick test runs.\
**Add proactively** — **+ More → Integrations → Google Workspace**, authorise.

<details>

<summary>Permissions (scopes) Riff requests in Google Sheets</summary>

| Category     | Scope summary                                         |
| ------------ | ----------------------------------------------------- |
| Spreadsheets | See & download spreadsheets (incl. settings/metadata) |

{% hint style="info" %}
Riff uses OAuth; tokens are stored securely and handled by the Integrations system (no hard-coding secrets in code).
{% endhint %}

</details>

### How Riff wires Sheets for you (under the hood)

* Sets up OAuth and stores tokens in **Secrets/Integrations**
* Adds minimal scopes, verifies, test action
* Exposes Sheets to tasks, automations, and agents

### Security notes

* Sheets may contain sensitive info (e.g., financial records)
* Tokens managed by Riff; frontend never sees secrets
* Actions run server-side; least-privilege scopes


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.riff.ai/archive/integrations-legacy-saas-connectors/native-integrations/google-sheets.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
