There are a lot of ways to connect Claude AI to Google Analytics, and most of the ones you’ll see advertised cost money. Paid connectors like Zapier, Windsor.ai, and Supermetrics all work, and if you want a no-code, someone-else-handles-the-plumbing setup, they’re fine. But you don’t need them. You can connect Claude and Google Analytics for free with three things: Python, a free Google Analytics account, and a free Google Cloud project.
I want to be upfront about who’s writing this: I’m Brendon Rowe, a marketer, not a coder. I’ve spent 14+ years in digital acquisition, SEO, and paid search, but I don’t write software. If the idea of installing Python and touching a command prompt makes you a little nervous, I get it — it made me nervous too. I still got the whole thing working in an hour, and this article walks through exactly how, plus the small snags nobody warned me about.
Where I Found the Method
I initially got the core instructions from a Rank Math SEO tutorial on YouTube. It’s a clear, follow-along walkthrough, and I’d recommend watching it before or alongside this article. I’ve embedded it here:
Rather than repeat the video step for step, I want to give you the tips I found useful that aren’t covered in it — the security prompts that stopped me cold, the one-line shortcut for the trickiest install, the naming confusion around “Google Cloud Storage,” and how to point Claude at more than one Google Analytics account once you’ve got the first one running.
Installing Python and UVX: The Part That Made Me Hesitate
The connection relies on a small local program — an MCP server (Model Context Protocol) — that acts as the bridge between Claude and the Google Analytics API. To run it, you need Python and a lightweight tool called uv (its runner command is uvx). Here’s what actually happened when I installed them.
You May Have to Give Your Security System Permission
Both Python and uv were initially blocked by my security software. My first instinct was to stop — an unfamiliar download getting flagged is exactly the kind of thing we all teach each other to avoid. So I want to be clear about what I found: after granting permission to install them, there were no issues with viruses or malware. Python and uv are mainstream, widely used developer tools, and the block was my security system being cautious about unrecognized installers, not a sign of anything harmful. If you hit the same wall, that’s normal. (As always, only download these from their official sources, which I’ve linked below.)
Installing uv the Easy Way
Installing uv turned out to be the easiest part, because you can do it entirely from the command prompt with a single line:winget install astral-sh.uv
That’s it. Windows’ built-in package manager (winget) fetches and installs it for you — no browser downloads, no installer wizard, no clicking through options. If you’re on a Mac, the equivalent one-liner uses Homebrew (brew install uv). You can grab Python the same way, or from the official Python download page.
Why the Python Package Matters Here
It’s fair to ask why you’re installing Python at all if you’re not going to write any code, I was curious about it as well and did some research. The answer: the official Google Analytics MCP server is a Python program. Python is the engine it runs on, and uv is the tool that downloads and launches that program on demand. You never edit the code — you just need the runtime present so the server can start when Claude asks for it. Think of Python as the electricity and the MCP server as the appliance you’re plugging in.
Google Cloud Console, Not Google Cloud Storage: Clearing Up the Confusion
This tripped me up, and I’ve seen it trip up other people searching for the same thing, so it’s worth stating plainly. You’ll see this setup described as needing “Google Cloud Storage” or the “Google Cloud Store.” That’s a naming mix-up. Google Cloud Storage (GCS) is a specific product for storing files in buckets, and it has nothing to do with this. What you actually need is a free Google Cloud Console — the umbrella account inside the Google Cloud console that lets you switch on Google’s APIs.
Once you have that mental model straight, the connection is four moves:
- Create a free Google Cloud project. If you have a Google account, you already have access to the console. Spin up a new project — no billing or paid tier required for this.
- Enable the Google Analytics Data API. This is the switch that lets your project read GA4 reporting data. Search for it in the console’s API library and turn it on.
- Set up credentials. You have two paths. The simplest for a solo site owner is Application Default Credentials using your own Google login. For client work the cleaner path is a service account with a downloadable JSON key — a dedicated, non-human identity that isn’t tied to your personal login. Make sure to grab the email produced during the end of this step and save it in a notepad or word doc.
- Grant access inside Google Analytics — the step most guides skip. Creating a service account and downloading its key does not, by itself, give it any access to your data. You have to add the service account’s email address, which is provided when you set up the Data API, as a user on the GA4 property, under Admin → Property Access Management, with at least Viewer permission. Add the email produced in the last step as a marketer role. Miss this and every request fails, even though everything else looks correct.

After that, you add a short entry to Claude Desktop’s configuration file pointing at the MCP server and your credentials, restart the app, and Claude can talk to your GA4 data directly. The Rank Math video shows the config edit on screen if you want to follow along visually.
Using Claude AI and Google MCP Across Multiple Analytics Accounts
I didn’t want this just for my own site — I manage Google Analytics for clients, and the real payoff is being able to analyze and monitor their properties from the same setup. Adding another Google Analytics account comes down to two separate layers, and you usually have to touch both.
Layer 1: The MCP Config (the “Which Property” Layer)
If you’re running a local GA4 MCP server through Claude Desktop’s config file, the property ID lives there — usually as an environment variable or argument. To add another property, you add or adjust that value and restart Claude. If instead you’re on a managed or remote connector where you pick the property in a menu, there may be no file to edit at all — you just select or add the property in the interface. Make sure to save all code in the Config file before closing it and restarting Claude. If you have a bad syntax or line, then the entire config file will go back to a default setup.
Layer 2: Credential Access in Google Analytics (the “Is It Allowed” Layer)
This is the step people miss. Whatever identity your MCP server authenticates as has to be granted access to each new property:
- Service account setup (a JSON key referenced in your config): copy the service account’s email and add it as a user with at least Viewer on the new property, under GA Admin → Property Access Management. That property can live under a completely different Google Analytics account — access is granted per property, so you don’t need a new credential for each client.
- OAuth setup (you authorize with your own Google login): simpler — any GA property your Google account already has access to is reachable. You just point the config or connector at the new property ID.
In short: the config decides which property Claude looks at, and Google Analytics decides whether it’s allowed to. One without the other won’t work.
What Claude Can Do With Just Google Analytics
The Rank Math video also demonstrates connecting Google Search Console alongside Google Analytics, and pairing the two is genuinely useful for organic-search questions. But there are plenty of tasks Claude handles faster with Google Analytics alone — no second connection to set up or manage. Once you’re connected, you can ask Claude to pull and interpret:
- Traffic & acquisition — sessions, users, channels (organic, paid, direct, referral), and campaign performance.
- Content performance — top pages, engagement time, and bounce/engagement rates by page.
- Conversions & events — goal completions, form submissions, and key events.
- Audience — geography, device and platform breakdowns, and demographics.
- Ecommerce — if configured: revenue, transactions, and product performance.
- Attribution — which channels and campaigns actually drive conversions.
Instead of exporting rows into a spreadsheet and building the pivot yourself, you ask a plain-English question — “which landing pages lost the most organic traffic month over month?” — and Claude queries the data and answers. For anyone who does this reporting week after week, that shift alone is worth the afternoon of setup.
Helpful Resources for Using Claude With Google Analytics
If you want to go deeper, these are the credible, first-party sources I’d start with:
- Google’s official Google Analytics MCP server — the open-source project and its setup documentation.
- Google Analytics Data API documentation — the API this whole connection relies on.
- uv documentation — official install and usage guide for the tool that runs the server.
- Anthropic’s guide to custom connectors with remote MCP — how Claude connects to external tools.