
InsightfulPipe publishes this guide, and its steps use InsightfulPipe's hosted Snapchat Ads, BigQuery and Google Sheets servers. Other routes, from Supermetrics to Snap's own read-only server, are covered near the end.
Last updated: 2026-10-02
A Snapchat Ads connector moves campaign data out of Snapchat Ads Manager and into the tools you report in. With InsightfulPipe, Claude reads and changes Snapchat Ads live through https://snapchat-ads.insightfulmcp.com/. Claude, or the insightfulpipe CLI on a schedule, then writes the stats into BigQuery or a Google Sheet, and Looker Studio (now Data Studio) reads that table. Plans start from $29.99 a month.
The quick version
Six steps take Snapchat stats from Ads Manager to a Data Studio report, with Claude doing the work in between.
- In InsightfulPipe, open Connected accounts, click Connect account and connect Snapchat Ads.
- In Claude, add
https://snapchat-ads.insightfulmcp.com/as a custom connector and click Connect. - Connect BigQuery in InsightfulPipe with a service account key, at Read & write.
- Add
https://bigquery.insightfulmcp.com/to Claude the same way. - Ask Claude to read last week's Snapchat stats and insert them into a BigQuery table.
- In Data Studio, add that table as a BigQuery data source.
Snapchat Ads connector routes at a glance
InsightfulPipe is the Snapchat Ads connector on this page that gives Claude live read and write access, and it fills BigQuery and Google Sheets on the same plan. ETL tools such as Supermetrics, Windsor.ai, Coupler.io and Catchr feed Data Studio through their own connectors and load BigQuery on a schedule. The Snapchat Ads MCP server page lists every action.
InsightfulPipe | ETL connectors: Supermetrics, Windsor.ai, Coupler.io, Catchr | |
|---|---|---|
Claude | Live reads and changes through 43 Snapchat actions | Reads; none of the four publishes a Snapchat write |
Campaign changes | Creates and updates campaigns, ad squads, ads and creatives; new campaigns, ad squads and ads start paused | None for Snapchat |
BigQuery | Claude or the CLI inserts rows with | Scheduled transfers |
Data Studio | Reads the BigQuery table or Google Sheet that InsightfulPipe fills | Their own Data Studio connectors |
Schedule | You choose: ask Claude, or run the CLI from cron | Built in, such as hourly, daily or weekly at Supermetrics |

Watch: Snapchat Ads MCP server tutorial, a full campaign analysis with Claude, 1 minute 24 seconds
The video may show an earlier setup. Follow the steps in this guide for the current route.
What you are connecting
You connect Claude to InsightfulPipe's hosted servers, and each one reaches only the accounts you authorized.
- Claude → InsightfulPipe Snapchat Ads server → your Snapchat ad account
- Claude or the CLI → InsightfulPipe BigQuery server → your Google Cloud project
- Data Studio → Google's BigQuery connector → the same table
Claude never receives your Snapchat password. InsightfulPipe runs each Snapchat Marketing API call with the access you approved. For BigQuery, it uses a service account key you upload, and the key's IAM roles decide what SQL can do.
InsightfulPipe has no Data Studio connector, and this route does not need one: Google's own BigQuery and Sheets connectors read what InsightfulPipe writes. You need no Snap developer app, no server to host and no API version to track.
Snapchat stats come by campaign, ad squad or ad, as a total or by day.
Before you start
You need five things: Snapchat access, an InsightfulPipe workspace, the right role, a Google Cloud project and Claude.
- Snapchat Ads Manager access to the ad accounts you report on.
- An InsightfulPipe workspace. Plans start from $29.99 a month and include the Snapchat Ads, BigQuery and Google Sheets servers. Each ad account, Cloud project or spreadsheet counts as one connection. Start a trial or compare plans.
- A role that can connect and write: Owner, Administrator or Operator. Members with the User role cannot.
- A Google Cloud project with BigQuery, plus permission to create a service account and a key.
- Claude with custom connectors. Every Claude plan can add them, and Claude Free allows one, per Anthropic's help article.
Snapchat's own roles still apply. InsightfulPipe cannot give Claude more access than the Snapchat login you connect.
Step 1: Connect Snapchat Ads in InsightfulPipe
Connecting takes a Snapchat sign-in and a choice of ad accounts, and you approve access on Snapchat's own page.
- In the InsightfulPipe app, open Connected accounts and click Connect account.
- Search for Snapchat and click Connect on the Snapchat Ads card.
- Click Continue with Snapchat Ads and sign in with your Snapchat business login.
- Approve access, pick the ad accounts and click Connect 1 account, or the count you picked.

Each ad account becomes its own connection, with all 43 actions switched on. The control section below shows how an admin narrows them.
Step 2: Add the Snapchat Ads connector to Claude
Claude takes one URL and a sign-in, on claude.ai or in Claude Desktop.
- Copy the server URL:
https://snapchat-ads.insightfulmcp.com/ - In Claude, open Customize > Connectors, click +, then Add custom connector.
- Name it, paste the URL, click Continue, then Add.
- Click Connect, and sign in to InsightfulPipe if asked.
- In a new chat, open + > Connectors and switch Snapchat Ads on.

In Claude Code, run claude mcp add --transport http snapchat-ads-mcp https://snapchat-ads.insightfulmcp.com/. ChatGPT, Cursor, Gemini CLI and Codex take the same URL, with steps on the server page's setup tabs.
On Claude Free, add the single InsightfulPipe server at https://main.insightfulmcp.com/ instead, so one connector reaches Snapchat Ads, BigQuery and Google Sheets.
Step 3: Connect BigQuery in InsightfulPipe
BigQuery connects with a Google Cloud service account key, and the key's IAM roles decide which SQL succeeds.
- In Google Cloud Console, open IAM & Admin > Service Accounts and create a service account.
- Grant it BigQuery Data Editor and BigQuery Job User, so it can create tables and insert rows.
- Open the account's Keys tab and create a JSON key.
- In InsightfulPipe, open Connected accounts, click Connect account and choose BigQuery.
- At Access level, pick Read & write and click Continue.
- Under Service Account JSON Key, choose Upload or Paste, then click Connect BigQuery.
InsightfulPipe checks the key with Google before it saves the connection. Create a dataset such as snapchat_ads in the BigQuery console, then add https://bigquery.insightfulmcp.com/ to Claude as in Step 2. The BigQuery MCP server page lists its five actions.

Step 4: Write Snapchat stats into BigQuery with Claude
Claude reads the stats with get_campaign_stats and writes them with run_query, so one prompt fills the table.
Use Snapchat ad account [AD_ACCOUNT_ID] and BigQuery project [PROJECT_ID].
1. Create the table [PROJECT_ID].snapchat_ads.campaign_daily if it does not exist,
with date, campaign_id, campaign_name, impressions, swipes and spend.
2. Read daily stats for every campaign from [START_DATE] to [END_DATE].
3. Divide spend by 1,000,000 to turn micro-currency into currency.
4. Insert one row per campaign per day.
Show me the SQL before you run it.A single SELECT counts as a read. An INSERT, a CREATE TABLE or several statements in one request count as writes, which only owners, admins and operators can run.
Each daily-stats request covers at most 32 days, with both bounds on the ad account's own midnight. Ad account stats return spend only, so Claude reads each campaign.
Step 5: Schedule the load with the insightfulpipe CLI
Claude writes when you ask. For a nightly load, a scheduled job runs the same two calls through the insightfulpipe CLI.
InsightfulPipe does not run the schedule itself. Cron, GitHub Actions or Cloud Scheduler does, and each run follows the same action switches as Claude.
- Install the CLI with
npm install -g insightfulpipe. - In InsightfulPipe, open Settings > API Keys and create a key that starts with
ip_sk_. - Store the key as
INSIGHTFULPIPE_TOKENin the job's secrets. - Run
insightfulpipe accounts --platform snapchat-adsonce to get your IDs.
insightfulpipe query snapchat-ads -b '{"action":"get_campaign_stats","workspace_id":"<WORKSPACE_ID>","brand_id":"<BRAND_ID>","ad_account_id":"<AD_ACCOUNT_ID>","campaign_id":"<CAMPAIGN_ID>","fields":["impressions","swipes","spend"],"granularity":"DAY","start_time":"<START>","end_time":"<END>"}'
insightfulpipe action bigquery -b '{"action":"run_query","workspace_id":"<WORKSPACE_ID>","brand_id":"<BRAND_ID>","gcp_project_id":"<PROJECT_ID>","query":"INSERT INTO `<PROJECT_ID>.snapchat_ads.campaign_daily` (date, campaign_id, impressions, swipes, spend) VALUES (...)"}' --yesYour script turns the first call's JSON into the VALUES list. Writes go through action, not query, and --yes skips the confirmation prompt. The CLI documentation lists every command.

Step 6: Connect Data Studio to the BigQuery table
Data Studio reads the table through Google's own BigQuery connector, and InsightfulPipe has no Data Studio connector of its own. Google has restored the Data Studio name, so the menus and docs use it.
- In Data Studio, click Create, then Report.
- In Add data to report, choose the BigQuery connector.
- Pick MY PROJECTS, then your project, the
snapchat_adsdataset and thecampaign_dailytable. - Click Add.
Google bills the report's queries to the project you pick, per its connector docs.
No BigQuery? Use a Google Sheet as the source
A Google Sheet works as the Data Studio source too, and Claude fills it with update_cells.
- In Google Sheets, create the spreadsheet and a tab for Snapchat stats.
- In InsightfulPipe, connect Google Sheets at Read & write, click Pick from Google Drive and choose the file.
- Add
https://google-sheets.insightfulmcp.com/to Claude and ask it to write last week's stats into the tab. - In Data Studio, click Create, then Data Source, choose Google Sheets, pick the spreadsheet and worksheet, and click CONNECT.
update_cells overwrites the range you name, so point Claude at a fresh tab or empty rows. InsightfulPipe opens only the files you pick, and Data Studio checks the sheet for new rows each time a report queries it.
Verify it worked
Three checks, shortest first, show that each hop works before you build a report.
Snapchat answers. Paste this into a new chat. It reads account details and changes nothing.
List the Snapchat ad accounts available to this connection.
Return the account name, account ID, currency and status.
Do not run a report and do not change anything.BigQuery answers. Ask Claude to list the datasets in your project. It runs list_datasets, which only reads.
The numbers match. Compare one day's spend in the table with Snapchat Ads Manager for that day.
Prompts to run first
Start with reads, then let Claude write to BigQuery once the numbers match Ads Manager.
Prompt | What Claude does |
|---|---|
"What was cost per swipe by campaign last month?" | Reads campaign stats and ranks them |
"Load yesterday's campaign stats into snapchat_ads.campaign_daily" | Reads stats, then inserts rows with run_query |
"Write last week's spend by campaign into the Snapchat tab" | Reads stats, then runs update_cells |
"Pause the three ad squads with the highest cost per swipe" | Updates their status to paused |
The marketing prompt library and the Claude skills library are free to use. The social media ads skills cover Snapchat.
What Claude may change in Snapchat Ads and BigQuery
Claude may change only what your admin leaves switched on, and nothing it creates in Snapchat starts delivering on its own.
The Snapchat Ads server has 43 actions: 35 read and 8 write, none of them destructive.
- Every action is a switch. An owner, admin or operator turns any action on or off, per ad account, at any time. The server refuses a switched-off action in every client.
- Created paused, for you to set live. New campaigns, ad squads and ads start paused, even when the request asks for active.
- An update is what starts delivery.
update_campaign,update_adsquadandupdate_adcan set an item active. Switch those three off where Claude should only report. - Nothing gets deleted. The connector has no delete action, so deleting stays with you in Ads Manager.
- Other ad accounts stay out of reach. The server checks every campaign, ad squad and ad ID against the connected ad account.
- BigQuery writes sit behind two switches: the
run_queryaction, and the service account's roles. With only Data Viewer and Job User, BigQuery refuses every write. - Roles hold. Members with the User role run only the reads left on, on accounts an owner or admin grants them.

Snapchat connections always carry read and write access, so for a reporting-only account an admin switches all eight writes off. That is why InsightfulPipe is the safest way to let an AI agent change a Snapchat Ads account: there is no delete action, new work waits paused, and your admin decides what each account allows.
Troubleshooting
Most failures are one of these seven, and six of them come with an exact message.
- "No Snapchat Ads accounts found." The Snapchat login cannot open an ad account. Check its access in Ads Manager, then connect again.
- "The service account authenticated, but cannot list datasets in project [PROJECT]: [ERROR]. Grant 'BigQuery Data Viewer' and 'BigQuery Job User' on the project, then try again." Add those roles, plus Data Editor for writes, and upload the key again.
- "This action modifies data and cannot run through the read-only query_data tool. Send the same body through execute_action instead." An INSERT is a write. In the CLI, run it with
action, notquery. - "This action is disabled for this connected account. An owner or admin must enable it for the account." Action control is doing its job. An owner, admin or operator switches it on.
- "Your role does not have permission to execute write actions. Only operators, admins, and owners can execute write operations." Your workspace role is User. Ask an owner or admin to change it.
- "campaign_id [ID] belongs to Snapchat ad account [ID], not the connected account [ID]." Claude used an ID from another account. Ask it to list the connected account's campaigns first.
- Spend looks a million times too high. Snapchat reports spend in micro-currency. Divide by 1,000,000 before you insert it.
Other Snapchat Ads connectors for Data Studio and BigQuery
ETL connectors such as Supermetrics, Windsor.ai, Coupler.io and Catchr feed Data Studio through their own connectors and load BigQuery on their own schedules. None of them publishes a Snapchat write for Claude, which is where InsightfulPipe differs.
We read every capability, default and price from each vendor's own documentation, pricing page or public repository, and ran InsightfulPipe on live accounts. Each row quotes the vendor's own page, checked on 2026-10-02.
Route | Data Studio | BigQuery | Claude on Snapchat | The vendor's words |
|---|---|---|---|---|
InsightfulPipe | Reads what InsightfulPipe writes | Claude or the CLI inserts rows | Reads and changes, each action a switch | 43 actions: 35 read, 8 write |
Supermetrics | Partner connector | Scheduled | Reads; its writes cover five other ad platforms | "hourly, daily, or weekly" |
Windsor.ai | Connector | Managed pipeline | Reads; no Snapchat write listed | "builds and manages ETL pipelines" |
Coupler.io | Connector | Scheduled | Analysis; no Snapchat write published | "as frequent as every 15 minutes" |
Catchr | Connector | Scheduled | Reads only | "Claude cannot create, pause, or edit a campaign" |
Dataslayer | Connector | Destination | Not on its page | "schedule automatic data refreshes" |
Power My Analytics | Connector | Destination | Listed as a destination | "Snapchat Ads to Data Studio" |
Whatagraph | Not on its pages | Scheduled | Not on its pages | "according to a schedule set by you" |
Two Minute Reports | Connector and templates | Not on its pages | Reads only | "Claude can only read your data." |
Adzviser | Connector | Not on its pages | Reads only | "Claude cannot change anything in Snapchat Ads" |
CData | Not on its pages | SSIS packages you build | Local, read-only MCP | "a local, read-only MCP server" |
Porter Metrics | No Snapchat connector | No Snapchat connector | No Snapchat connector | 11 paid media connectors, none for Snapchat |
Snap's Ads MCP server, at https://mcp.snapchat.com/ads, reads only. In Snap's words: "This release is read-only: an agent can read your Snapchat Ads data but cannot create, update, or delete anything." An Admin or Business Admin approves each agent, and the server writes nothing to BigQuery or Data Studio.
AWS AppFlow, Domo and Salesforce Data Cloud also rank, as Snapchat connectors inside their own platforms. Fivetran and Airbyte document Snapchat sources for warehouse loads.
InsightfulPipe puts Claude's live reads and writes, BigQuery and Google Sheets on one plan from $29.99 a month, with every action a switch your admin controls.
Frequently asked questions
Sources (checked 2026-10-02)
Every third-party claim above comes from that company's own page or documentation, opened on 2026-10-02.
- Snap: Ads MCP introduction
- Google: Data Studio release notes, connect to BigQuery, connect to Google Sheets, BigQuery roles
- Anthropic: custom connectors using remote MCP
- Supermetrics: Data Studio, BigQuery, Claude
- Windsor.ai: Data Studio, BigQuery, write actions
- Coupler.io: Data Studio, BigQuery, MCP
- Catchr: Data Studio, BigQuery, Claude
- Dataslayer: Snapchat connector
- Power My Analytics: Snapchat Ads to Data Studio
- Whatagraph: Snapchat Ads to BigQuery
- Two Minute Reports: Data Studio templates, Snapchat Ads to Claude
- Adzviser: Data Studio, Snapchat Ads to Claude
- CData: SSIS to BigQuery, MCP server
- Porter Metrics: connectors
- Fivetran: Snapchat Ads; Airbyte: Snapchat Marketing
- InsightfulPipe: Snapchat Ads MCP server, BigQuery MCP server, Google Sheets MCP server, BigQuery docs, CLI docs, pricing





