To connect Meta Ads to ChatGPT:
- Sign up free at portermetrics.com and connect your Meta ad account with your Facebook profile.
- In ChatGPT, 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 ChatGPT’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 ChatGPT, 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.
Prerequisites
- A Porter Metrics account with your Meta Ads account connected (free tier is enough to try it end-to-end)
- A ChatGPT account — the free plan works for ChatGPT Web; a Pro subscription is needed for Codex and Desktop MCP features
- Admin or standard access to the Meta Ads ad accounts you want to connect
Connect Meta Ads to ChatGPT with 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, Codex 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.
The full setup takes under 5 minutes and breaks into three moves: connect Meta Ads to Porter, point ChatGPT 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 ChatGPT. It handles OAuth, rate limiting, pagination and all the plumbing so ChatGPT 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 ChatGPT as the destination → select Meta Ads as the source → sign in with Facebook to grant access to your ad accounts.

We recommend selecting access to both current and future Business Managers so Porter can automatically pick up new ad accounts as your team scales.
Select your ad accounts. Choose the Meta Ads ad accounts you want ChatGPT to query. When you select multiple ad accounts under a single connection, Porter automatically blends their data together so you can query them as one.

Optional: enable automatic BigQuery storage if you’re connecting multiple ad accounts with large data volumes. This keeps ChatGPT’s responses fast even at scale.
2. Connect the MCP to ChatGPT
Porter’s MCP URL is what you paste into ChatGPT. Once added, ChatGPT can query Meta Ads data on demand in any conversation.
Go to chatgpt.com and click the + icon in the chat input to open the tools menu.

In the menu that opens, hover over Connectors and click Manage connectors.

In the Connectors panel, click the + button at the top of the list to start adding a new connector.

Pick Add custom connector from the dropdown that appears.

A dialog opens with the name and URL fields. Type Porter in the first field to name the connector.

In the second field, paste https://mcp.portermetrics.com/mcp. Leave the advanced settings alone.

Click Add at the bottom right of the dialog. ChatGPT opens a sign-in window — use the same Google account linked to your Porter workspace and approve access.

Once the authorization finishes, you’ll see Porter’s tools appear in the connectors panel. You’re ready to start asking questions (and, for connectors that support it, running actions).

For a fuller walkthrough with screenshots at every step, see the Porter MCP tutorial.
3. Start building questions and dashboards
With Porter connected, open a new ChatGPT chat and ask anything about your Meta Ads in plain English. ChatGPT 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:
For a full catalogue of copy-paste prompts organized by use case (performance, fatigue, budget, agency, B2B, e-commerce, cross-channel), jump to the prompts section below.
Alternative ways to connect Meta Ads to ChatGPT
MCP is the path we just walked through — and the one we recommend for most marketers. But it’s not the only way to get Meta Ads data in front of ChatGPT. The most common alternatives are Meta Ads’s direct API (or its official MCP if it has one), a live Google Sheets bridge, and BigQuery for scale. Each has its trade-offs — pick the one that fits how your team already works.
- 🔌 Meta Ads’s direct API (or official MCP) — Talk to Meta’s Marketing API yourself, or install Meta Ads’s own official MCP. Maximum control, but you handle auth, rate limits and pagination — and you only get one source.
- 📊 Google Sheets — Live Sheet or one-off CSV upload. Auditable, familiar, faster for big exports — but aggregation happens in the Sheet, not the API.
- 🗄️ Google BigQuery — For large ad accounts or agencies running multi-account analysis. BigQuery aggregates; ChatGPT only queries pre-built summaries.
Via the Porter Metrics app in the ChatGPT marketplace
If you’d rather not paste a connector URL, install Porter straight from ChatGPT’s app gallery — it’s the same Porter connection behind the scenes, published as an approved ChatGPT app:
- Open the Porter Metrics app page in ChatGPT (or search “Porter Metrics” in the apps gallery).
- Click Connect and sign in with the same account you use in Porter.
- Authorize it and ask your first Meta Ads question — same live data as the MCP.
The trade-off to know: the marketplace app only updates after each ChatGPT review cycle, while the MCP updates the moment Porter ships. If you want every new tool and data source immediately, use the MCP; if you want the one-click install and don’t mind waiting for new features, the marketplace app is the shortest path — including write actions through your connected Porter account.
Via Meta Ads’s direct API (or official MCP)
If you’re building a product around Meta Ads — or you’re a developer who’d rather own every layer of the integration — the most direct path is talking to Meta’s Marketing API yourself, or — where it exists — Meta Ads’s own official MCP. Meta launched its official Ads AI Connectors — an MCP server at mcp.facebook.com/ads — on April 29, 2026. It authenticates with your existing Facebook Business login: no Developer App, no app review, no API tokens, and it is free during the open beta. Whichever route you pick, you still follow Meta’s rate limits & quotas. Either way you skip Porter and call Meta from your own code, from Codex, or from Meta Ads’s own connector.
The trade-off to know. Going direct gives you maximum control and the freshest possible data — every endpoint, every parameter, no abstraction layer in between. But you’re now responsible for OAuth flows, refresh tokens, rate limits, pagination, schema changes, and error retries. And critically, you only get one source. The moment you also want Google Ads, GA4 or Shopify in the same conversation, you’re back to building (or stitching together) more integrations.
When this makes sense: engineering teams that need a single source with full control, products that ship Meta Ads data as a feature (where you own the integration anyway), or one-off scripts where you don’t mind writing the auth and pagination code yourself. For marketers who want to ask questions in plain English and blend Meta Ads with the rest of their stack in a single conversation, the Porter MCP path is dramatically less work.
Via Google Sheets (live Sheet or manual CSV)
If your team already lives in Google Sheets — or you want a paper trail before ChatGPT touches anything — feed Meta Ads into a Sheet, then let ChatGPT read the Sheet. You can automate the Meta Ads → Sheets pipeline with Porter so it refreshes daily, or do one-off CSV exports from Meta Ads’s native UI for static analysis.
The trade-off to know. With the MCP path, ChatGPT calls Meta’s API directly and Meta does the filtering and aggregation on its side — clean and deterministic. With the Sheets path, ChatGPT aggregates inside the Sheet itself, which can introduce hallucinations on totals, averages, and joins when you have thousands of rows. The upside is speed: for very large date ranges or historical analysis, a pre-built Sheet is dramatically faster than live API calls.
When this makes sense: finance teams that want to review numbers before ChatGPT 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.
Read the full Sheets tutorial →
Via Google BigQuery (for scale)
This is the path most people overlook — and it’s the one that saves you when your Meta Ads ad account gets serious. A single large advertiser or an agency managing 10+ ad accounts will hit API rate limits and latency problems querying ChatGPT directly. ChatGPT will literally tell you it’s taking too long or timing out on big pulls.
BigQuery fixes that. You load Meta Ads data into BigQuery tables on a schedule, then connect BigQuery to ChatGPT — either through a BigQuery MCP or via Codex with SQL queries. Instead of asking ChatGPT to pull raw Meta Ads data, you let BigQuery aggregate into small, optimized tables, and ChatGPT only queries the summarized output. Scale problem solved.
When this makes sense: enterprise ad 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.
Read the full BigQuery tutorial →
Connecting Meta Ads to Codex
Most marketers lump ChatGPT and Codex 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.
ChatGPT is a chat interface. You ask a question, ChatGPT 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.
Codex is ChatGPT 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 Codex unlocks that ChatGPT alone cannot
This is where the MCP ecosystem pays off most. Because Codex 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.
Feed Codex your Meta Ads targets and goals — CPA goals, daily budgets, ROAS thresholds — and ask it to generate a custom ROI dashboard for each client. It builds the HTML, pulls live data, deploys to a URL. No Data Studio embed to break when the vendor changes pricing, no template constraints. The dashboard updates automatically because it queries Porter’s MCP on every page load.
Best for: agencies that want white-label client dashboards without Looker or Data Studio dependencies.
Combine your own Meta Ads performance from Porter with competitor landing pages and live ads from the Meta Ad Library scraped via Firecrawl. Codex stitches both into a weekly competitive intelligence report — your numbers next to their creative angles and pricing, with an LLM summary on top of what changed week over week. Runs on cron, lands in your inbox every Monday morning.
Best for: in-house teams that need market context, not just internal numbers.
Use Airtable or Notion as the schema, Porter as the data source. Codex keeps every page populated with current spend, CPA, and ROAS for every ad account — no stale screenshots, no copy-paste from Excel. New hires read one wiki entry and have full context on a client’s account.
Best for: agencies and ops teams onboarding analysts or rotating account managers frequently.
A Codex routine on cron pulls Meta Ads via Porter, evaluates thresholds — CTR drops below 1%, daily spend spikes 2× the trailing average — and pushes Slack or Gmail alerts the moment something crosses the line. You stop checking dashboards reactively; the dashboard checks itself and tells you when to look.
Best for: any team that’s ever discovered a problem 48 hours too late because nobody opened the report.
Bottom line: ChatGPT is for quick questions and ad-hoc dashboards. Codex is for building apps, live dashboards, alerts, and actual tools — anything you want to run on its own without re-asking. Same Porter MCP URL works in both, so you don’t pick once and lock in.
Use cases — what you can actually do once Meta Ads is connected to ChatGPT
Getting the connection right is half the battle. The real value shows up in what you do next — these are the jobs Porter users actually solve once Meta Ads data is live inside ChatGPT.
Find which creatives are actually winning before you scale them
Meta's reported Actions can be claimed under different attribution windows (1-day, 7-day and 28-day click), so the same ad looks like a different performer depending on which column you read. A beginner scales an ad that only looks great on the 28-day click window, where Meta gets credit for conversions that would have happened anyway. ChatGPT with Porter MCP pulls Impressions, Frequency, Reach and Actions across the windows side by side, so you compare like for like and catch the ad that's just riding a long attribution tail before you pour budget into it.
Catch creative fatigue before spend quietly bleeds out
Frequency creeping up while Reach stalls is the classic fatigue signal a beginner misses because the dashboard still shows yesterday's results as fine. By the time CPA visibly spikes you've already wasted days of budget showing the same ad to the same people. Ask ChatGPT to track Frequency against Reach and Impressions week over week through Porter MCP and it flags the ad sets where the audience is saturating, so you rotate creative on time instead of after the damage.
Reconcile why Meta's numbers don't match your real sales
Meta counts a conversion under the day someone clicked, not the day they bought, and recent days keep getting revised upward as more attributed conversions land. A marketer who pulls a report today and trusts the last two days will under-report and panic. ChatGPT plus Porter MCP can pull the same date range across attribution windows and flag that recent days are still settling, so you read the trend honestly instead of reacting to numbers that aren't final yet.
Build a weekly client or exec report without touching Ads Manager
Exporting Ads Manager by hand means someone picks columns inconsistently every week and the attribution window silently changes between reports, so trends look like swings that never happened. ChatGPT reading through Porter MCP locks the same metrics (Impressions, Reach, Frequency, Actions) and the same window every time, so the week-over-week story is real. You get a written summary you can paste into a deck instead of wrestling with the export UI.
Decide where budget is being wasted across campaigns
Spend concentrates in a few campaigns while a long tail quietly burns money at high frequency and low Actions. Reading this in the native UI means scrolling and eyeballing. Ask ChatGPT through Porter MCP to rank campaigns by Actions efficiency and surface the ones with high Impressions but thin results, and you get a shortlist of what to cut or cap before you decide anything in Ads Manager yourself.
Plan a budget change safely instead of yanking the lever
Meta's learning phase punishes big sudden budget moves and the platform limits how often budgets can change, so the instinct to double a winner overnight backfires. The expert raises gradually and waits. ChatGPT with Porter MCP analyzes recent performance and proposes a staged plan you approve, rather than firing rapid automated edits that destabilize delivery or trip Meta's automation guardrails.
Meta Ads fields and metrics you can query with ChatGPT
Before you start writing prompts, it helps to know what data is actually available. Porter MCP gives ChatGPT access to 1,391 Meta Ads fields and metrics across every reporting level, plus breakdowns by audience, placement, device, and geography. And the same MCP URL also unlocks 25+ other sources — so ChatGPT can blend Meta Ads with Google Ads, GA4, Shopify, HubSpot and more in a single prompt.
Prompts you can copy-paste today
For agencies
When you manage multiple client accounts and need standardized reporting, pacing checks, and fast performance summaries.
For B2B & lead-gen marketers
When you run lead-gen campaigns and need to connect lead volume to lead quality and funnel performance.
For DTC & e-commerce
When you track ROAS, purchase value, and the funnel from click to checkout across products and audiences.
Cross-channel & full-funnel
When you run on multiple platforms and need unified reporting and budget-allocation decisions across channels.
How to use Codex for Meta Ads without getting banned
The expensive failure mode on Meta isn't a bad report, it's a disabled ad account. Marketers who wire an AI agent to make rapid, unsupervised edits to budgets and campaigns, or who automate the Ads Manager UI through a browser bot, have had accounts flagged and disabled. When that happens you lose the account, its full history and learning, and any active spend gets frozen mid-flight. The data was never the risk. The write access used carelessly is.
Meta polices behavior, not intent. Two patterns get accounts disabled: making programmatic writes at scale (rapid-fire automated changes), and driving the Ads Manager interface with browser automation. Meta also enforces hard limits regardless of who's making the change: budget changes are capped at 4 per ad set per hour, spend-cap changes at 10 per account per day, and any single budget move larger than about 20% restarts the learning phase and destabilizes delivery. Tripping these repeatedly is what flags an account.
The behaviors that actually put accounts at risk
Letting an agent make rapid unsupervised budget changes. Allowing ChatGPT to fire off budget or status edits in a loop, with no human approving each one, is exactly the programmatic-write-at-scale pattern Meta disables accounts for. Even when it stays under the per-hour caps, a stream of automated edits looks like abuse.
Automating the Ads Manager UI with a browser bot. Driving the Ads Manager web interface through a browser-automation tool to make changes is against Meta's rules and is a top reason accounts get disabled. Changes should go through the official API with explicit confirmation, never by puppeting the UI.
Scaling a winner too fast. Doubling a budget overnight or jumping more than ~20% in one move dumps the ad set back into the learning phase, tanks delivery, and burns spend while it re-stabilizes. The instinct to scale hard is the trap.
The safety protocol
- Read first, write only on explicit approval. Use ChatGPT and Porter MCP to read, analyze and recommend by default. Any change to budgets, status or campaigns should require you to confirm that specific action before it happens.
- Never automate changes in a loop. Don't set up an agent to make repeated edits unattended. Keep a human approving each write so you never drift into programmatic-write-at-scale territory.
- Stay inside Meta's change limits. Respect 4 budget changes per ad set per hour, 10 spend-cap changes per account per day, and never move a single budget more than about 20% at once. Scale gradually.
- Never drive Ads Manager with a browser bot. All changes go through the official API with confirmation. Automating the Ads Manager UI is a fast path to a disabled account.
- Space out actions across multiple accounts. If you manage several accounts, leave at least 15 minutes between automated actions on different accounts so activity doesn't look like coordinated abuse.
What Porter MCP does differently: Porter MCP reads and analyzes by default, so ChatGPT pulls your Meta metrics (Impressions, Reach, Frequency, Actions across attribution windows) to recommend without touching the account. Where write actions are supported, Porter uses deterministic, confirmable components rather than free-form automation: each change is an explicit action you approve, it respects Meta's rate limits and learning-phase guardrails, and it backs off instead of retrying in a loop. It does not puppet the Ads Manager UI through a browser, and it does not fire rapid unsupervised edits. The default posture is analysis; writing is opt-in and gated by your confirmation.
Ready to chat with your Meta Ads?
Open ChatGPT, add the Porter connector, and ask your first question. If you don’t have Porter yet, start a free trial and connect your Meta Ads account — you’ll be chatting with your campaigns in under five minutes.
rocket_launchStart free Porter trialopen_in_newOpen ChatGPT
