Meta Ads MCP: 5 free ways to connect Meta Ads to Claude in 2026
Porter Metrics++
boltMeta Ads + AI Tutorial · 2026

Meta Ads MCP: 5 free ways to connect Meta Ads to Claude in 2026

Learn to connect Meta Ads to Claude via MCP for free. Create reports and manage campaigns, creatives, and budgets with AI, all from the chat. Explore alternatives like Meta’s official MCP, Google Sheets, and BigQuery, and avoid the mistakes that get ad accounts banned.

rocket_launchUse Porter for freeManage your ad accounts and build reports with Claude, free forever, automations included. The only limits: up to 3 ad accounts and 30 days of historical data for reporting. No credit card required.
Juan Bello

Juan Bello

Founder, Porter Metrics

Updated May 28, 2026 · 12 min read

boltTL;DR

To connect Meta Ads to Claude:

  1. Sign up free at portermetrics.com and connect your Meta ad account with your Facebook profile.
  2. In Claude, click + → Connectors → Manage Connectors → Add custom connector, name it Porter, paste https://mcp.portermetrics.com/mcp, then click Add and authenticate with Google.

That’s it, you’re connected. Porter’s free plan covers up to 3 Meta ad accounts with no usage limits on Claude’s free plan. No credit card required.

What makes Porter different:

  • Read + write, safely. Porter’s MCP lets you adjust budgets, manage campaigns and upload creatives (including videos and carousels) from inside Claude, through deterministic code components. Nothing hallucinates, and built-in rate limiting keeps your ad account safe from bans.
  • 200+ Meta Ads metrics and dimensions, and the only MCP that includes attribution coverage in the same connection.
  • Universal Meta Ads MCP. Build hosted, white label dashboards and client portals for your clients, track competitor ads with creative analysis that shows you the hooks, angles and formats winning in your niche, and validate ideas with Google Trends and keyword data. Your whole Meta Ads operation runs from one chat.
Meta Ads client dashboard built with Claude and Porter MCP showing campaign performance, ROAS, CPA and creative breakdown
Example Meta Ads client dashboard generated in Claude using live data from Porter MCP.
download Download the .pptx template content_copy Copy the prompt (.txt)
Connect Meta Ads to Claude in 4 ways without getting banned — Porter Metrics 2026 tutorial

Prerequisites

  • A Porter Metrics account with your Meta Ads account connected (free tier is enough to try it end-to-end)
  • A Claude account — the free plan works for Claude Web; a Pro subscription is needed for Claude Code and Desktop MCP features
  • Admin or standard access to the Meta Ads account(s) you want to connect

Connect Meta Ads to Claude with the Porter Metrics MCP

For this tutorial we’re going with the MCP method. Here’s a quick explainer of what MCP is and why it’s the best path for Meta Ads.

MCP (Model Context Protocol) is the open standard that lets AI tools like Claude, ChatGPT, Claude Code and others access and use external APIs — the things that make tools like Meta Ads work under the hood. Instead of building a custom integration for every AI tool you use, you install one MCP and every compatible AI gets access to the same data.

Four reasons MCP wins for Meta Ads:

content_paste
Copy-paste setup
No tokens, no scripts, no developer help — literally paste one URL into Claude and you’re done.
hub
Works with every AI tool
Claude, Claude Code, ChatGPT, Cursor, Antigravity, Lovable, Vercel v0, Zapier. One MCP URL, every tool that speaks the protocol.
merge_type
20+ sources in one connection
Porter’s MCP ships Meta Ads plus Google Ads, GA4, Shopify, HubSpot, Klaviyo, Google Sheets and 20+ more. Query and blend them all in a single conversation.
tune
Perfect granularity
Spreadsheets lock you into the columns you exported. MCP hits Meta’s API directly — so you can filter by campaign, break down by creative or placement, and add new dimensions on the fly without rebuilding tables.

The full setup takes under 5 minutes and breaks into three moves: connect Meta Ads to Porter, point Claude at the Porter MCP, and ask your first question.

1. Connect your Meta Ads data to Porter

Porter sits between Meta’s Marketing API and Claude. It handles OAuth, rate limiting, pagination and all the plumbing so Claude only ever sees clean, structured data.

Sign up for Porter. Create a free account at portermetrics.com. The free tier is enough to run this full workflow end-to-end.
Connect your Facebook profile. In Porter, click Create → pick Claude as the destination → select Meta Ads as the source → sign in with Facebook to grant access to your ad accounts.
Connect and authorize your Facebook profile in Porter
We recommend selecting access to both current and future Business Managers and Meta ad accounts. This prevents the need to repeatedly re-authorize your Facebook profile later. Your Facebook profile email can be different from the Google account you use to sign in to Porter.
Select your ad accounts. Choose the Meta ad accounts you want Claude to query. When you select multiple accounts under a single connection, Porter automatically blends their data together so you can query them as one.
Select your Meta Ads ad accounts in Porter
Optional: enable automatic BigQuery storage if you’re connecting multiple accounts with large data volumes. This keeps Claude’s responses fast even at scale.

2. Connect the MCP to Claude

Porter’s MCP URL is what you paste into Claude: https://mcp.portermetrics.com/mcp. Once added, Claude can query Meta Ads data on demand in any conversation.

Go to claude.ai and click the + icon in the chat input to open the tools menu.
Click the + icon in the Claude chat input
In the menu that opens, hover over Connectors and click Manage connectors.
Hover Connectors and click Manage connectors
In the Connectors panel, click the + button at the top of the list to start adding a new connector.
Click + at the top of the Connectors panel
Pick Add custom connector from the dropdown that appears.
Select Add custom connector from the dropdown
A dialog opens with the name and URL fields. Type Porter in the first field to name the connector.
Type Porter in the connector name field
In the second field, paste https://mcp.portermetrics.com/mcp. Leave the advanced settings alone.
Paste the Porter MCP URL into the Remote MCP server field
Click Add at the bottom right of the dialog. Claude opens a sign-in window — use the same Google account linked to your Porter workspace and approve access.
Click Add on the custom connector dialog
Once the authorization finishes, you’ll see Porter’s tools appear in the connectors panel. You’re ready to start asking questions — including write actions like adjusting budgets, pausing campaigns or uploading creatives.
Porter tools visible in the Claude connectors panel

For a fuller walkthrough with screenshots at every step, see the Porter MCP tutorial.

3. Start asking questions, building dashboards, and automating ad management

With Porter connected, open a new Claude chat and ask anything about your Meta Ads in plain English. Claude calls Porter behind the scenes, pulls live data from Meta, and answers with tables, charts, or summaries.

Try one of these to verify the setup is working:

chat_bubble“Create a new campaign with a sales objective and my lookalike audience, upload the creatives from my Google Drive folder, and follow the naming conventions in my Google Sheet.”
chat_bubble“Show me my ad spend for the last 7 days, broken down by campaign and audience.”
chat_bubble“Build a live dashboard of my Meta Ads performance and a slide deck I can present to my client.”

For a full catalogue of copy-paste prompts organized by job (campaign management, budgets, creative uploads, UTMs, performance, reporting, agencies, e-commerce, cross-channel), jump to the prompts section below.

Alternative ways to connect Meta Ads to Claude

Porter MCP is the path we just walked through and the one we recommend for most marketers. It is not the only way to get Meta Ads data in front of Claude, though. The most common alternatives are Meta’s official Ads MCP, a live Google Sheets bridge or CSV upload, BigQuery for scale, and Meta’s own agentic stack through Manus AI. Each has trade-offs, so pick the one that fits how your team already works.

verified
Meta’s official MCP
Meta’s own connector, free during beta. Meta data only: no blends, dashboards, or multi-account setup.
table_chart
Google Sheets
Live Sheet or one-off CSV upload. Auditable, familiar, faster for big exports — but aggregation happens in the Sheet, not the API.
database
Google BigQuery
For large accounts or agencies running multi-account analysis. BigQuery aggregates; Claude only queries pre-built summaries.
smart_toy
Manus AI
Not a direct Claude connection. Still works in Ads Manager, but Meta is unwinding the acquisition after China blocked it.

Via Meta’s official Ads MCP

Meta launched its own MCP in open beta in April 2026, and it is quickly becoming the most common way to connect Meta Ads to an AI assistant. Add https://mcp.facebook.com/ads as a custom connector in Claude, sign in with your Meta account, and you get 29 official tools for campaign management, product catalogs, and performance insights. Authentication runs directly between you and Meta, it is free during the beta, and any campaign it creates starts paused by default.

The nuances: not every account has access yet, since Meta is rolling the beta out gradually, and pricing after the beta is not announced. It covers Meta data only, with no blending with Google Ads, GA4, Shopify, Sheets, or BigQuery, and no hosted dashboards or client portals. There is also no multi-account setup: agencies managing several clients work one account at a time.

Keep in mind that an MCP wrapped directly around the API is sometimes not enough. It cannot see your creatives: the tools read text fields only, no images or video, so it cannot tell you which hooks or visuals are winning. Uploading videos and carousels often fails because those steps need extra infrastructure. Access tokens expire after about 60 days and do not refresh on their own, so tools quietly stop returning data until you reconnect. And budgets deserve a double check when the account currency is different from yours, since a dollars to pesos mix up can set spend very wrong.

Some metrics are also missing or inconsistent: users report cost per add to cart and custom conversions absent, and attribution window settings ignored in places. A Meta Ads expert friend summed it up for us: it is useful, but you need to know the platform well to spot what is off, and you end up writing your own instructions file so the AI does not guess. Porter MCP covers this out of the box: creative analysis included, uploads handled, tokens that do not expire, multi account and dashboards built in, on top of the same Meta data.

When this makes sense: solo advertisers who only need Meta data and want the official path, with no cross channel reports, client dashboards, or multiple accounts to manage.

Via Google Sheets (live Sheet or manual CSV)

If your team already works in Google Sheets, or you want to double check the data before giving it to AI, feed Meta Ads into a Sheet and let Claude read the Sheet. You can automate the Meta Ads to Sheets pipeline with Porter so it refreshes daily, or export a CSV from Ads Manager for one-off analysis.

A Sheet also gives you something the API path does not: you can edit the data and blend it with your own numbers, like goals and budgets. It works in the other direction too: connect that Sheet to Porter MCP and it blends your Sheet with live Meta Ads data automatically, so you can track budget versus actual spend, monitor pacing, or compare your naming conventions against what is actually implemented in the account.

The trade-off to know. A Sheet does not make Claude hallucinate more or less, the data is the same either way. The difference is how the math gets done. Porter MCP runs deterministic queries, so totals and averages arrive already calculated and exact. With a Sheet, Claude does the aggregation itself, so double check the math on very large exports. The upside of Sheets is speed: for big date ranges or historical analysis, a pre-built Sheet is faster than live API calls. One more limit to know: the Sheets path is for analysis only. Claude can read the data, but it cannot pause campaigns, change budgets, or automate tasks from a Sheet.

When this makes sense: finance teams that want to review numbers before Claude acts on them, agencies already delivering client reports in Sheets, historical analysis across years of data, or any case where you care more about speed than real-time freshness.

Via Google BigQuery (for scale)

Most people overlook this path, but it is the one that saves you when your Meta Ads account gets serious. A single large advertiser, or an agency managing 10+ accounts, will hit Meta’s API rate limits and latency problems on big pulls. Claude will tell you the query is taking too long or timing out.

BigQuery fixes that. Porter loads your Meta Ads data into BigQuery on a schedule, included in the free plan, and you connect BigQuery to Claude through a BigQuery MCP or Claude Code. BigQuery aggregates the raw data into small summary tables and Claude only queries those, so answers stay fast no matter how big the account gets.

BigQuery is also the best place to blend beyond marketing: combine Meta Ads with product analytics, internal usage data, or web traffic in the same warehouse. Porter MCP reads and writes BigQuery tables, so Claude can create the tables and blend the data for you, ready to query. Like Sheets, this path is for analysis and reporting only: managing campaigns and automating tasks still happens through an MCP with write access.

When this makes sense: enterprise accounts with millions of impressions, agencies running multi-account analysis across 10+ clients, or any team already using BigQuery as a data warehouse. Porter loads Meta Ads (and 25+ other sources) directly into BigQuery so you don’t have to build your own ETL.

Via Manus AI (still works, but in retreat)

Manus AI became part of Meta in December 2025, when Meta acquired the Singapore-based agentic AI startup for more than $2 billion. The deal did not survive: in April 2026 China’s regulator ordered the acquisition unwound, and in June 2026 Meta cut Manus off from its internal systems and began sunsetting it. Manus still works inside Meta Ads Manager today as an AI work partner that analyzes campaigns, generates reports, and runs competitor research, but its future inside Meta is uncertain.

Two things to understand. First, Manus is not a direct Claude connection: you are using Meta’s chosen models, not chatting with Claude. Second, with the acquisition reversed, the likely path is Manus moving back to open standards like MCP for these same use cases, which means anything you build on the native integration may need to move later.

When this makes sense: only if you live inside Ads Manager and want zero setup today. Given the unwinding, we now recommend this as the last option. The MCP paths above keep working no matter what happens to Manus.

Connecting Meta Ads to Claude Code

Most marketers lump Claude and Claude Code together and miss the biggest advantage of the entire MCP ecosystem. They’re not the same tool — and the difference matters enormously once you start working with Meta Ads data seriously.

Claude is a chat interface. You ask a question, Claude pulls live data through the MCP, answers, maybe builds a quick dashboard inside the conversation. Great for one-off analysis. The problem: everything is ephemeral. Want to refresh the dashboard tomorrow? You regenerate it from scratch. Want the same report every Monday? You re-ask the question every Monday.

Claude Code is Claude running inside your computer’s terminal. Because it has access to your filesystem, runtime, and other developer tools, it doesn’t just answer questions — it can build real software. Persistent scripts, scheduled routines, HTML apps, internal dashboards, integrations that run 24/7 without your input. Once it’s connected to Porter’s MCP for Meta Ads, a whole category of work becomes possible.

What Claude Code unlocks that Claude alone cannot

This is where the MCP ecosystem pays off most. Because Claude Code can combine Porter’s MCP with other MCPs — Firecrawl for web scraping, Airtable for structured data, Notion for wikis, Vercel for deployment, Slack and Gmail for delivery — you’re no longer querying data. You’re building tools.

apps
Build your own budget management app
Connect Meta Ads targets and goals, let Claude Code generate a custom ROI dashboard for each client, and deploy it to Vercel. No Data Studio to break.
visibility
Full competitor + performance monitoring
Combine Porter (your Meta performance) with Firecrawl (competitor landing pages and ads). Claude Code stitches both into a weekly competitive intelligence report.
menu_book
Internal marketing wiki with live metrics
Use the Airtable or Notion MCP with Porter’s MCP. Claude Code keeps your internal wiki populated with current spend, CPA, ROAS and creative notes for every client.
notifications_active
24/7 alerts on spend, CTR, and quality drops
A Claude Code routine runs on cron, pulls Meta Ads via Porter MCP, pushes Slack/Gmail alerts when CTR drops or spend spikes. Never miss a problem.

The common thread: Claude gives you answers. Claude Code gives you systems. For one-off questions Claude is faster. For anything you want to run more than once, or for anything that needs to persist beyond a chat session, Claude Code is the better tool.

Rule of thumb: if the work is “look at last week’s numbers,” use Claude. If the work is “monitor this every day forever,” use Claude Code. The same Porter MCP URL works in both — you don’t have to rebuild the integration.

And because the MCP spec is open, everything you build in Claude Code today will still work in Cursor, Antigravity, Lovable, Vercel v0, or whatever AI tool you adopt next year. That portability is the real value of picking the MCP path.

Use cases: what you can actually do once Meta Ads is connected to Claude

Getting the connection right is half the battle. The real value shows up in what you do next. These are the use cases Porter users build around their Meta Ads accounts, from full campaign management to client facing reporting.

1. Manage campaigns from the chat

The biggest shift from a dashboard: Claude does not just read your account, it operates it. Create campaigns, pause and activate ad sets, and adjust targeting through Porter’s deterministic components, with built in rate limiting so your account stays safe. One habit to keep for every prompt that changes the account: ask Claude to show the change and wait for your confirmation.

tune“Create a campaign with a sales objective, my lookalike audience, and a $50 daily budget. Show me the full setup and create it paused so I can review before launch.”
tune“Pause every ad set with frequency above 4.0 and CPM trending up. List what you will pause and wait for my confirmation.”

2. Automate UTMs and naming conventions

Dynamic UTM parameters in Meta look convenient, but they can break attribution: when an ad uses a dynamic value like placement, GA4 and attribution tools often record the literal text instead of the actual placement. The reliable fix is writing real UTMs into each ad, which nobody does manually at scale. With the MCP it is automated: Claude writes the actual UTMs into every ad and validates them against your naming convention sheet, so your Meta, GA4, and attribution numbers finally match.

link“Audit the UTMs of all my active ads. Flag missing parameters, duplicates, and dynamic values that report as literal text in GA4.”
link“Fix the flagged ads using the naming conventions in my Google Sheet. Show me a before and after table and wait for my approval before applying.”

3. Manage budgets and pacing

Budget management is where chat beats dashboards: you spot the problem and fix it in the same conversation. Keep your budget targets in a Google Sheet and let Claude compare plan versus actual spend. One caution from earlier in this article: double check amounts when the account currency is different from yours.

payments“Compare month to date spend against the budget targets in my Google Sheet. Which campaigns are pacing over or under plan?”
payments“Increase budgets 20% on campaigns with ROAS above 4 and stable CPA over the last 14 days. Show me each change and apply only after I confirm.”

4. Upload creatives, videos and carousels

Uploads are the step where raw API connections usually fail, because videos and carousels need extra infrastructure. Porter handles that part, so Claude can take files from your computer or Google Drive and turn them into ads that follow your naming conventions.

cloud_upload“Upload the videos in my Google Drive folder as new ads in the [Campaign] campaign, named with my naming convention. Create everything paused.”
cloud_upload“Build a carousel ad with these 5 product images and my usual copy structure. Show me the preview before publishing.”

5. Reporting: questions, dashboards, alerts and client decks

Everything analysis related lives here, and it is still the daily bread. Ask questions in plain English, blend Meta Ads with revenue sources like Stripe, HubSpot, or Shopify for real attribution, schedule alerts that ping you on Slack or Gmail only when something needs attention, and turn live data into hosted dashboards or client decks.

chat_bubble“What’s my ROAS by campaign over the last 14 days?”
hub“Match my Meta Ads campaigns with HubSpot closed won deals from the last 90 days. Which campaigns generated pipeline, not just leads?”
notifications“Every morning at 8 AM, check yesterday’s Meta Ads performance. If any campaign’s CPA increased more than 25% versus its 7 day average, send me a Slack DM with the campaign name and likely cause.”
slideshow“Generate an HTML presentation for my [Client Name] monthly review with a spend summary, top wins, concerns, and action items, using live Meta Ads data.”

Meta Ads fields and metrics you can query with Claude

Before you start writing prompts, it helps to know what data is actually available. Porter MCP gives Claude access to 200+ Meta Ads metrics across every reporting level, plus breakdowns by audience, placement, device, and geography. And the same MCP URL also unlocks 25+ other sources — so Claude can blend Meta Ads with Google Ads, GA4, Shopify, HubSpot and more in a single prompt.

Geography
Region
Conversion
Mobile app achievements unlockedLanding page viewsLanding page views (1 day click)Landing page views (1d_click + 1d_view)Landing page views (28 days click)Landing page views (7 days click)Page engagementPage engagement (1 day click)
Other
Actions (All)Actions (All) (1d_click + 1d_view)Actions (Without customs)Actions (Without customs) (1d_click + 1d_view)Attribution settingAuction BidAuction competitivenessCanvas avg view percent
Cost & Bidding
Cost per three-second video viewCost per any action (CPA)Cost per check-inCost per credit spend actionCost per desktop app engagementCost per desktop app story engagementCost per desktop app useCost per estimated ad recall lift (people)
Engagement
Actions (All) (1 day click)Actions (All) (28 days click)Actions (All) (7 days click)Actions (Without customs) (1 day click)Actions (Without customs) (28 days click)Actions (Without customs) (7 days click)App custom event (1 day click)App custom event (28 days click)
ad_dimension
Carousel card nameAd bid infoCall to action typeAd configured statusAd creative IDAd creative nameAd preview URL: desktop feedDestination URL
breakdown
Ad format assetAgeAd text IDAd textCall to action asset IDCall to action asset nameCountry codeCountry icon
adset_dimension
Adset edit linkAdset IDAdset nameAdset statusAdset budget remainingAdset configured statusAdset daily budgetAdset end date
Mobile App
App custom eventApp custom event (1d_click + 1d_view)Mobile app adds of payment infoMobile app adds of payment info (1d_click + 1d_view)Mobile app add to wishlistMobile app content viewsMobile app levels completedMobile app rating submitted
account_dimension
Account currencyAccount edit linkAccount IDAccount nameAccount statusAccount amount spentAccount balanceBusiness city
campaign_dimension
Campaign budget remainingCampaign configured statusCampaign daily budgetCampaign edit linkCampaign end date & timeCampaign IDIs Campaign using SKAdNetworkCampaign lifetime budget
time
DateDay of week (Mon – Sun)MonthQuarterWeekWeek (Mon-Sun)YearMonth and year
all_dimension
Action typeAction type (with custom conv. IDs)Age targetingBuying typeConversion rate rankingCreated timeEngagement rate rankingGender targeting
Visibility
FrequencyFull view impressionsFull view reachImpressionsReach
Keywords & Search
Engagement Rate RankingConversion Rate RankingQuality ranking
Product & Catalog
Mobile apps content view (shared item)Omni content view (shared item)
reach_estimate_dimension
Reach estimate: users lower boundReach estimate: users upper bound
End date
End date
Real time API
Real time
Start date
Start date
breakdown_dimension
Platform position

Prompts you can copy-paste today

Once your Meta Ads account is connected, these are the prompts Porter users run most often, organized by job: manage the account, control budgets, keep tracking clean, analyze performance, and report. Copy, paste, run. Every prompt that changes the account has the safety habit built in: review first, then apply.

Campaign management

tune“Create a campaign with a sales objective, my lookalike audience, and a $50 daily budget. Show me the full setup and create it paused.”
tune“Pause every ad set with frequency above 4.0 and CPM trending up. List what you will pause and wait for my confirmation.”
tune“Duplicate my best performing ad set into a new campaign targeting [Country]. Keep the creatives, adjust the audience, and create it paused.”
tune“Activate the campaigns I approved yesterday and confirm their start dates and budgets back to me.”

Budgets and pacing

payments“Find campaigns that spent more than $200 in the last 60 days with zero conversions. Sort by spend descending.”
payments“Based on month to date spend, project end of month spend for each active campaign. Flag any projected to overshoot its monthly budget by more than 15%.”
payments“List campaigns with ROAS greater than 4x and stable CPA over the last 14 days. Recommend safe budget increases for the next 7 days.”
payments“Cut budgets 30% on campaigns below 1.5x ROAS over the last 30 days. Show me each change and apply only after I approve.”

Creative uploads

cloud_upload“Upload the videos in my Google Drive folder as new ads in [Campaign], following my naming convention. Create them paused.”
cloud_upload“Build a carousel from these 5 images with my standard primary text and headlines. Show me the preview before publishing.”
cloud_upload“Replace the creative in every ad flagged as fatigued with the new versions in my Drive folder, keeping UTMs and naming intact. Confirm the list with me first.”

UTM and naming hygiene

link“Audit UTMs across all active ads. Flag missing parameters, duplicates, and dynamic values that report as literal text in GA4.”
link“Rewrite the UTMs of the flagged ads using my naming convention sheet. Show me a before and after table and wait for my approval.”
link“Compare campaign and ad set names against my naming convention. List everything off convention and propose corrected names.”

Performance checks

chat_bubble“Pull last 7 days of Meta Ads performance. Show spend, CPA, ROAS, CTR by campaign. Compare to the previous 7 days and flag anything that moved more than 20%.”
chat_bubble“Show me ROAS for the last 30 days at the account level, using 7-day click attribution. Break down by campaign objective.”
chat_bubble“Compare my Meta Ads performance this month vs last month. Break down spend, ROAS, CPA, and conversion volume. Highlight the 3 biggest drivers of change.”
chat_bubble“Review spend and results by ad set for the last 14 days. Which ad sets have the lowest CPA? Which should I pause, optimize, or scale?”

Creative fatigue

chat_bubble“Analyze active ads from the last 14 days. Flag any with CTR decline greater than 20% from peak, or frequency above 3.0. Categorize each as URGENT, WARNING, or HEALTHY.”
chat_bubble“Group ads by creative angle (parse from ad names). Rank by ROAS and CTR. Tell me which angles are scaling and which are dying.”
chat_bubble“For any ad with a CTR drop greater than 15% in the last 7 days, recommend a replacement angle based on what’s still working in this account.”

Client reporting

chat_bubble“Draft a client-ready weekly summary email for [Client Name]. Include a KPIs table, top 3 wins, top 3 concerns, and 3 action items for next week.”
chat_bubble“For each of my connected Meta Ads accounts, pull last 7 days: spend, conversions, CPA, ROAS. Highlight accounts that outperformed or underperformed their 30-day average by more than 20%.”
chat_bubble“Write a one-page monthly performance review for [Brand]. Compare this month to last month and the same month last year. Focus on trends, not tactics.”

Prompts for agencies managing multiple clients

If you run Meta Ads for 5+ brands, these prompts replace most of your weekly data wrangling:

groups“For every connected Meta Ads account, pull last 7 days: spend, conversions, CPA, ROAS. Compare to prior 7 days. Highlight changes greater than 20%. Format as one client-ready email per account.”
groups“Review campaign-level ROAS across all my accounts for the last 30 days. Suggest where to shift budget to maximize total return.”
groups“Compare my 5 e-commerce clients’ Meta Ads performance. Who has the lowest CPA and highest ROAS? Identify patterns in targeting, placements, and creative that correlate with winners.”

Prompts for e-commerce teams

When you combine Meta Ads data with Shopify revenue in one prompt, Claude answers questions that used to require a full BI stack:

shopping_cart“Match Meta Ads spend with Shopify revenue for the last 30 days. Calculate true ROAS per campaign. Highlight campaigns below 2x and suggest optimization actions.”
shopping_cart“Find campaigns where spend went up but revenue dropped in the last 14 days. Diagnose likely inefficiency: targeting, creative fatigue, or market conditions.”
shopping_cart“Which products drove the most revenue from Meta Ads last month? Break down by campaign and ad creative. Suggest products to feature more heavily.”

Cross-channel prompts (Meta + Google + GA4 + Shopify)

Meta Ads alone only tells part of the story. Because the same Porter MCP URL connects to Google Ads, GA4, Shopify, HubSpot and 20+ more sources, Claude can run true cross-channel analysis in a single prompt, including B2B pipeline questions against your CRM.

hub“Pull Meta Ads spend, Google Ads spend, and Shopify revenue for the last 30 days. Calculate true ROAS per channel after deduplicating conversions. Which channel actually drove the most purchases?”
hub“Match Meta Ads campaigns with CRM closed-won deals for the last 90 days. Calculate cost per closed deal. Which campaigns delivered the highest pipeline value?”
hub“Pull Meta Ads, Google Ads, GA4, and Shopify data for the last 7 days. Build a unified daily performance snapshot: spend per channel, conversions per channel, blended CPA, blended ROAS. Highlight any anomalies.”

How to use Claude Code for Meta Ads without getting banned

In early 2026, a marketer posted in r/FacebookAds that Claude Code got their account permanently banned. The post hit 70+ comments and is still the #1 organic result on Google for “claude code meta ads”. In their own words: “If you use Claude Code to day-trade Meta ads, you’ll get banned.”

We’ve seen it happen to our own clients. Agencies with six-figure monthly spend have had ad accounts permanently disabled over a single weekend of automated experimentation. The cost isn’t a Claude subscription — it’s the ad account, the pixel history, the learning phase, and sometimes hundreds of thousands of dollars in frozen spend. This section is the most important one in the article.

Meta’s enforcement is behavior-based, not tool-based. Meta doesn’t ban accounts because you used Claude or an MCP. It bans accounts because of how the API was used: write access at scale, bursty traffic, aggressive budget changes, or automated browsing of Ads Manager. Read-only analytics is safe. Write automation without guardrails is not.

The two behaviors that actually get accounts banned

After reviewing Meta’s official enforcement documentation and the 17 SaaS platforms that publish ads through the Marketing API (Smartly.io, Madgicx, Birch/Revealbot, Skai, Sprinklr and others), two patterns come up again and again.

1. Programmatic write access at scale. Read API access is universally safe — every BI tool (Supermetrics, Funnel.io, Fivetran) operates this way, and so do Porter MCP’s read tools. Porter MCP’s write actions use the same safety logic: deterministic code components, not AI-generated calls. The risk appears the moment unguarded write permissions (ads_management, pages_manage_ads) with automation that runs faster than a human would. Budget changes every 5 minutes, campaign duplication loops, bulk ad uploads with no delay — Meta’s systems flag those as bot behavior even if your ad content is perfectly compliant. Meta’s Platform Terms and Marketing API Rate Limiting docs spell out the caps explicitly — and going past them is the fastest way to lose an ad account.

2. Browser automation on Ads Manager. Tools that drive the Meta Ads Manager UI with an AI agent — Claude Code in browser-automation mode, headless browsers, RPA scripts — are even riskier than write APIs. Meta treats them as “unauthorized automated access” because you’re bypassing the API entirely and impersonating a human user inside the interface. The Meta Platform Policies, specifically the section on circumventing systems, prohibit this. Unlike rate-limited API calls, there’s no published “safe threshold” for UI automation. Any significant volume of automated clicks inside Ads Manager can result in a ban.

Both behaviors — write-at-scale via the API, and browser automation on the UI — trigger the same automated enforcement. If you want to use Claude for Meta Ads safely, stay on the read side for analysis, and only cross into write through a reviewed, rate-aware, gradual setup like the protocol below.

The 5-rule safety protocol

Based on Meta’s documented rate limits and the behaviors that have actually gotten accounts banned — not guesswork:

  1. Do not “day-trade” your ads. Meta’s official limit is 4 budget changes per ad set per hour, and 10 spend-cap changes per account per day. Blowing past those triggers automated enforcement even when your content is compliant.
  2. Review before you apply. Run scripts in read mode first, then enable write actions once you’ve verified the analysis. Porter MCP requires explicit confirmation for every write action — no campaign change runs until you approve it.
  3. Never automate the Ads Manager UI. No Claude Code browser automation, no headless Chrome, no RPA on meta.com. Use the Marketing API instead — that’s the only path Meta considers legitimate.
  4. Be gradual. Don’t scale a budget more than 20% in a single move. Meta’s 2026 systems flag abrupt spend spikes as suspicious behavior, separately from content review.
  5. One account at a time. If you’re automating ten accounts, run them sequentially with 15+ minute delays, not in parallel. Parallel burst API calls are the #1 trigger community members cite when their MCP setups got them banned.

What Porter MCP does differently: it enforces these rules at the platform level. Deterministic code components for every action — no AI-generated API calls. Explicit confirmation for any write. Built-in rate limiting with exponential backoff. Per-account call batching. No browser automation ever. That’s the behavior Meta’s automated systems reward.

Frequently asked questions

How do I use Claude Code for Meta Ads?
Install Claude Code, connect your Meta Ads account via MCP (Porter’s hosted server or your own), and describe what you want in plain English. Claude Code writes and runs the scripts for you.
Is Claude Code free for commercial use?
Claude Code is available on paid Anthropic plans (Pro, Max, Team, Enterprise) starting at $20/month. There is no free tier as of 2026.
Can I use Claude for marketing?
Yes. Claude is widely used for performance analysis, copy generation, creative strategy, client reporting, and workflow automation. The MCP ecosystem makes it especially powerful for paid media.
Is Instagram Ads data included in the Meta Ads MCP?
Yes. The Meta Marketing API treats Facebook and Instagram as one dataset. When you connect Meta Ads, Instagram Feed, Stories, and Reels data is included automatically.
Does Porter MCP include Facebook organic (non-ad) data?
No. Porter MCP is scoped to Meta Ads Manager. For organic Page insights, Porter offers a separate Facebook Insights connector.
Will Meta ban my account if I use Claude Code?
Only if you use it badly. Meta’s enforcement is behavior-based: burst API traffic, rapid budget changes, unreviewed apps, and poor rate limiting are what trigger bans. Following the 5-rule safety protocol above puts you in the same risk bucket as Smartly.io, Madgicx, and every other SaaS platform publishing ads via the Marketing API.
How much does it cost to connect Meta Ads to Claude?
With Porter MCP: free tier available. With Claude: $20/month for Pro (needed for custom connectors). Meta’s Marketing API itself is free, subject to rate limits.
Is my data safe with Porter MCP?
Yes. All tokens are stored encrypted, traffic is HTTPS-only, and Porter does not use your campaign data to train any models. You can revoke the connector at any time from Claude Settings or your Porter dashboard.
What’s the difference between Claude and Claude Code?
Claude is the conversational product (web, app, mobile). Claude Code is a terminal-based developer tool that can write scripts, save files, and automate workflows. Both can connect to Meta Ads via MCP.
Can Claude actually create or pause ads?
Yes. Through Porter MCP, Claude (both web and Code) can read, create, pause and modify campaigns, ad sets, ads, budgets and creatives — including carousels. Write actions run through Porter’s deterministic code components (not AI-generated API calls), with built-in rate limiting and Meta’s safety rules enforced at the platform level. Each write requires explicit confirmation before it executes.
How fresh is the data? Is it real time?
Meta’s Marketing API refreshes approximately every 15–30 minutes. Porter MCP pulls live, so your data is always within that window.
Are there rate limits for Meta Ads data?
Yes. Meta enforces 200 calls per hour on basic apps, and 1,000+ on business-verified apps. Porter MCP batches and caches requests automatically so you rarely hit them.
How does Porter MCP compare to Supermetrics or Funnel.io?
Supermetrics and Funnel are ETL tools that move data to a destination (Sheets, BigQuery, Looker). Porter MCP streams data directly into Claude’s conversation — no destination setup, no dashboards to build. You ask a question, you get an answer.
Why do Claude’s numbers sometimes differ from Ads Manager?
Three common reasons: (1) Attribution window — Ads Manager defaults to your UI setting; the API defaults to 7-day click. (2) Timezone — the Meta UI uses your timezone; the API may return UTC unless told otherwise. (3) Refresh lag — the Meta API updates every 15–30 minutes, so Ads Manager is slightly fresher. The fix: pin attribution in your prompt with something like “use 7-day click attribution and my Ads Manager timezone when calculating ROAS.”

Ready to chat with your Meta Ads?

Open Claude, add the Porter connector, and ask your first question. If you don’t have Porter yet, create your free account and connect your Meta Ads account. You’ll be chatting with your campaigns in under five minutes.

rocket_launchUse Porter for freeopen_in_newOpen Claude