Pricing

How to Connect Looker to Google Sheets

DIMENSIONSRegionProductChannelCustomer SegmentMEASURESRevenueOrdersAvg Order ValueMargin %Revenue by RegionBar chartUS East$4.2MEU West$2.9MAPAC$1.7MUS West$1.4MLATAM$880K
JW
James Whitfield

All 4 ways to get Looker data into Google Sheets: Connected Sheets, scheduled delivery, API, or a no-code add-on.

Looker is where the data team lives and where the source-of-truth metrics get defined. The friction is that the people downstream, RevOps, finance, leadership, usually live in Google Sheets. This guide walks through every realistic way to bridge that gap: Looker's own scheduled deliveries, Looker Studio export, Apps Script against the Looker API, and a no-code add-on like Brooked. Then a complete walkthrough of the Brooked setup, including the AI agent for exploring Looks in plain English.

Looker vs Looker Studio: which one are you connecting?

"Looker" and "Looker Studio" are two different Google products that get confused constantly because of the shared name. If you're trying to connect the enterprise BI platform (LookML models, Explores, a dedicated Looker instance URL like yourco.looker.com), keep reading. That's what the rest of this guide covers. If you're actually looking for Looker Studio (formerly Google Data Studio, the free dashboard builder), the official connector to Google Sheets is simpler and this section covers it end to end.

From Google Sheets: open your sheet, go to Extensions → Looker Studio → Create report. This opens Looker Studio with your sheet already connected as the data source, no separate connector setup needed.

From Looker Studio: click Create → Data source, search for and select the Google Sheets connector, pick the spreadsheet and the specific worksheet (tab), toggle "Use first row as headers" if your data has a header row, then click Add. Looker Studio will read the sheet's current values; refresh the data source or set up a scheduled report to keep charts current.

This is Google's own official, native, and free integration. See Google's official Looker Studio ↔ Google Sheets documentation for the full reference, including refresh behavior and known limits. It answers a different need than the rest of this guide (getting Looker BI data into a sheet). Looker Studio here is reading from a sheet you already have, not writing Looker's warehouse data into one.

Quick comparison: 4 ways to get Looker data into Google Sheets

MethodCostSetupAuto-refreshTwo-way syncCodeBest for
Looker scheduled deliveryFree (included)5 min per LookLooker scheduleNoNoneRecurring delivery of a specific Look on a known cadence
Looker Studio passthroughFree15 minManual or via Looker StudioNoNoneTeams already on Looker Studio that want Sheets as another destination
Apps Script + Looker APIFree1 to 2 hoursTime-driven triggerDIYRequired (LookML API)One-developer custom workflows with non-standard transforms
Brooked add-onFree tier · Pro $29/userUnder 5 min15 min / hourly / dailyNo (Looker is read-only by design)NoneTeams who want it to keep working without owning a script

Before any of this works: the Looker admin checklist

Two of the four methods below depend on settings only a Looker admin can change. Reading this list first will save you the 'why doesn't the option appear?' debug session every Looker user eventually has.

  • Admin → Platform → BI Connectors → enable 'Google Sheets'. Without this toggle, Data → Data Connectors → Connect to Looker in Sheets either doesn't appear or fails with 'The Looker instance is not configured'.
  • Admin → Actions → Google Sheets → Enable. Required for the Action Hub scheduled-delivery method. After enabling, users with the send_to_integration permission can schedule a Look to deliver to a Google Sheet on a cadence.
  • User email match. The email of the Looker user must match the email of the Google account they're signing in with. Mismatch produces a generic 403 with no useful message. If your team uses SSO with a different alias than Google Workspace, this trips up the entire rollout.
  • OAuth Client ID/Secret. For the Connected Sheets Quick Link from the Explore gear, the Looker admin needs to provision an OAuth Client ID in Google Cloud Console and paste the Client ID + Secret into Admin → Auth → OAuth. Without this, the 'View in Google Sheets' option does nothing.
  • 10-million cell limit awareness. The destination Sheet can't exceed 10M cells across all tabs. With a Look that has >26 columns, Looker won't auto-expand horizontally, so you have to widen the destination Sheet manually before the import or rows get truncated.

Method 1: Looker scheduled delivery

Looker has a built-in scheduling feature that delivers a Look on a recurring schedule via email, Slack, S3, or, most usefully for our purposes, a Google Drive folder. From any Look, click the gear icon → Schedule → New schedule. Pick the format (CSV is what you want for Sheets), the destination (Google Drive folder), and the cadence (every hour, daily, weekly, custom cron). Looker writes a fresh CSV to the Drive folder on the schedule.

From there, use Sheets' IMPORTRANGE or a small Apps Script to copy the latest CSV into a sheet on each delivery. Or use Sheets' File → Import directly and re-import each time.

Pros: Native Looker, free, fully supported, respects all Looker access controls.

Cons: One Look per schedule (so 10 Looks = 10 schedules to maintain). The Sheet doesn't update unless you also build the CSV-to-Sheet step. Filtering happens in the Look, not at delivery time, so a "this quarter" filter rolls over on its own schedule, not your delivery's.

Method 2: Looker Studio passthrough

Looker Studio (the dashboarding tool, formerly Data Studio) supports Looker as a data source. Build a Looker Studio report that mirrors the Look you want in Sheets, then use Looker Studio's "Export to Sheets" feature on each chart.

This works but is heavyweight. You're maintaining a Looker Studio report as a passthrough layer, and the export is manual on each chart. Useful if Looker Studio is already part of your stack; otherwise, skip.

Pros: Free, works across many Looker models.

Cons: Manual export per chart; aggregations rendered in Looker Studio charts are lost; you maintain a parallel Looker Studio report on top of your Looker dashboards.

Method 3: Apps Script + Looker API

Looker has a comprehensive REST API. You can call it from Google Apps Script to fetch Look results, run Inline Queries against any LookML model, or trigger Looks programmatically. The Look API endpoint is /looks/{id}/run/csv. Call it with an auth token, get CSV, parse, write to sheet.

Generate an API user in Looker (Admin → Users → New user → assign API access), then in Apps Script write a function that uses UrlFetchApp.fetch to login (POST to /api/4.0/login) and run the Look. Schedule with a time-driven trigger.

Pros: Free, fully customizable, can blend multiple Looks in one script.

Cons: Apps Script's 6-minute execution limit; maintaining the script through Looker version upgrades; managing the API user credentials. The script always feels like one breaking change away from silent failure.

Method 4: A Google Sheets add-on (Brooked)

For ongoing live Looker data in Sheets across many Looks without owning a script, a connector add-on is the right answer. Brooked's Looker connector authenticates via Looker's API, browses your available Looks and Explores in the sidebar, and lets you pick a Look, set a destination range, and schedule refresh, all without leaving the spreadsheet.

Step 1: Install Brooked

Install Brooked from the Google Workspace Marketplace. The free tier includes 100 imports per month with AI Analyst, no credit card required.

Step 2: Connect Looker

In Looker, create a dedicated API user (Admin → Users → New user). Set its role to one with API access and access to the models you want to expose to Sheets. Generate API3 credentials (Client ID + Client Secret) from the user's edit page. Copy them.

In the Brooked sidebar, click Add data source → Looker. Enter your Looker instance URL (e.g. https://yourco.looker.com), Client ID, and Client Secret. Click Test connection. On success, the sidebar populates with the Looks and Explores your API user can access.

Step 3: Pick a Look and import it

Browse the Looks tree in the sidebar (organised by folder, mirroring Looker's UI). Double-click a Look, and the preview pane shows the first 10 rows. Pick a destination range in the sheet (any cell; Brooked extends the range to fit the result) and click Import.

For ad-hoc queries, click New Inline Query instead. Pick a model, pick an Explore, pick dimensions and measures with Looker's familiar field picker, then run and import. This is the right path if the data you want doesn't have a saved Look yet.

Step 4: Schedule auto-refresh

Click the gear icon next to the import to open settings. Toggle Auto-refresh on and pick a cadence: 15 min, hourly, daily at a specific time, or weekly. The schedule runs server-side, so it fires even when no one has the sheet open.

Using the AI agent to explore Looker data

Open the Chat tab in the Brooked sidebar. Ask the agent: "Pull the latest 'Q Revenue by Region' Look into a new sheet" or "What Looks do I have for marketing attribution?" The agent lists available Looks and Explores, picks the right one, fetches results, and answers follow-up questions in pandas.

BrookedBrooked AI, Looker
Live
Ask anything about your Looker data…

What about Microsoft Excel?

Brooked is Google Sheets-native today. For Excel users, Looker Scheduled Deliveries can write CSV to an OneDrive or SharePoint folder which Excel can refresh from. Looker's own Power BI integration also works if your team uses Power BI. Most teams that try Excel-as-live end up moving live reporting to Sheets via Brooked and using Excel for offline modelling, exported from Sheets as .xlsx when needed.

The verdict: which method when

  • I just need this Look's data once

    Download CSV from the Look. Looker has a Download button on every Look. Click it, upload the CSV to Sheets. 30 seconds. No automation needed.

  • I want a specific Look delivered on a schedule

    Looker scheduled delivery. Looker can deliver a Look as a CSV attachment via email or to a Google Drive folder on any schedule. Native, free, supported.

  • I want live Looker data in Sheets across many Looks

    Brooked (or another add-on). Scheduled refresh, sidebar-driven Look picker, scheduling without leaving Sheets, no script maintenance.

  • I want the AI agent to explore Looker data in plain English

    Brooked. The agent can list available Looks and Explores, pick the right one, fetch data, and answer follow-up questions in pandas.

Troubleshooting common issues

Frequently asked questions

What's the fastest way to get a Look into Google Sheets?

For a one-time pull: click Download CSV on the Look, then File → Import in Sheets. For anything recurring: either Looker's built-in scheduled delivery (CSV to email or Google Drive), or install a Sheets add-on like Brooked that pulls live data from the Look on a configurable schedule.

Can I sync Looker data to Sheets live, without a script?

Yes. Brooked's Looker connector polls the Looker API on your schedule (15 min / hourly / daily) and lands the latest Look results in your sheet. No script, no manual download, no email delivery to forward. Looker Studio also has an 'Export to Sheets' option but it's manual, not scheduled.

Does Looker have a Google Sheets connector?

Not a first-party Sheets connector. Looker has scheduled deliveries (CSV via email or to a Google Drive folder) and the Looker API (for custom scripts). The closest thing to a 'native' connector is the integration between Looker Studio (formerly Data Studio) and Sheets, which works for some use cases but isn't a real-time sync.

How do I connect Looker Studio to Google Sheets?

From Sheets: Extensions → Looker Studio → Create report, which opens Looker Studio with your sheet already wired up as the data source. From Looker Studio: Create → Data source → search the Google Sheets connector → pick the spreadsheet and worksheet → toggle 'Use first row as headers' → Add. This is Google's official, native path and it's free. See Google's documentation for the full walkthrough.

Is Looker the same as Looker Studio?

No, they're separate Google products that happen to share a name. Looker is the enterprise BI platform built on LookML, used for governed, semantic-layer analytics (the subject of this guide). Looker Studio (formerly Google Data Studio) is a free, lightweight dashboarding tool that connects directly to Google Sheets, BigQuery, and dozens of other sources. If you searched for 'Looker Studio' and landed here, jump to the section above. It covers the official Looker Studio to Sheets connector.

Can I run a Looker query against multiple models from one sheet?

With Brooked: yes. Add multiple Look or Explore-based imports in the sidebar; each runs independently against whichever model the underlying Look uses. With Apps Script: yes, but you're managing the API calls yourself.

Will my row-level access controls in Looker carry through?

Yes. Brooked authenticates to Looker as a specific API user whose role and access filters apply. If the API user can only see certain rows in Looker, that's what Brooked sees and writes to the sheet.

What's the difference between using Looker and Brooked vs. just using Looker Studio?

Looker Studio is a dashboarding tool: your end product is a Looker Studio dashboard. Brooked is for teams whose end product is a Google Sheet (model, board deck data, ad-hoc analysis). Different problems. Many teams use both: Looker Studio for live dashboards on TVs and Confluence, Brooked for the Sheets that go into models and decks.

Can the AI agent explore Looks for me?

Yes. The agent can list available Looks and Explores in your Looker instance, pick the right one based on your prompt, fetch the data, and answer follow-up questions including pandas-level analysis on the result. Useful when you don't remember which Look had the data you need.

Does Brooked work with embedded Looker (Looker Embedded)?

Yes, but the auth flow is different. Embedded Looker uses signed embed URLs, so Brooked needs the embed secret (configured in Looker Admin → Embed) and works against the same models the embed exposes. Reach out to support for the setup details.

Get Looker data into Sheets without owning a script.

Brooked's free tier covers 100 imports per month with AI Analyst included, no credit card.

Install Brooked free →

Also in Analytics & BI

More Analytics & BI guides

Analytics & BI

How to Connect GA4 to Google Sheets

The free official Google add-on (GA4 Reports Builder) with the scheduling step nobody documents, the native Connected Sheets GA4 connector, BigQuery export for unsampled event-level data, plus the sampling and '(other)' aggregation traps that make GA4 numbers in your sheet diverge from the UI.

JW
James Whitfield
Read

Get your spreadsheet hours back

Brooked sets up in seconds. Your team is querying live data before lunch.

Get started free