Source connector
Facebook Ads connector
Facebook Ads integration for databases, warehouses and BI tools
Meta paid social campaigns and performance insights. Datrise captures Facebook Ads entities such as campaigns, ad sets, ads, spend, and conversion metrics, then lands normalized and typed models for warehouse reporting, attribution, and AI workflows.
The Meta Marketing API v22 (Ads Insights + Ad objects) authenticates with OAuth 2.0, incremental runs key on updated_time (campaign/adset/ad objects); date range (time_range/date_preset) for Insights, and Facebook Ads caps calls at No fixed numeric cap; usage is load-scored per app/ad-account and reported via the `X-FB-Ads-Insights-Throttle` response header (`app_id_util_pct`, `acc_id_util_pct`), with HTTP calls rejected once utilization nears 100%.
Of the 5 objects, 4 sync as upserts keyed on the primary key and 1 as append-only streams, so each incremental run moves only what changed since the last watermark. Every object lands in its own table (for example `facebook_ads_campaigns`) with a schema derived from the Facebook Ads API rather than a flattened CSV, in any of the 43 supported destinations.
Datrise is in early access: pick a destination below to open the Facebook Ads pipeline page, and join the waitlist to get the Facebook Ads connector (Ads) with guided onboarding.
What Facebook Ads data Datrise extracts
Each object lands in its own typed table. Sync mode is derived from the object: history-style objects append, everything else upserts.
| Object | Landing table | Sync mode |
|---|---|---|
| campaigns | facebook_ads_campaigns | Upsert by primary key, incremental on updated-at |
| ad sets | facebook_ads_ad_sets | Upsert by primary key, incremental on updated-at |
| ads | facebook_ads_ads | Upsert by primary key, incremental on updated-at |
| spend | facebook_ads_spend | Upsert by primary key, incremental on updated-at |
| conversion metrics | facebook_ads_conversion_metrics | Append-only, incremental by timestamp |
Facebook Ads API: setup facts for the connector
Verified against the vendor documentation on 2026-09-02. Unknown values are left blank rather than guessed.
| API | Meta Marketing API v22 (Ads Insights + Ad objects) |
|---|---|
| Authentication | OAuth 2.0 — OAuth 2.0 user or System User access token with `ads_read`/`ads_management` permissions on the ad account. |
| Pagination | cursor — Graph API cursor pagination via the `paging.cursors.after`/`before` values and `limit`; follow `paging.next` until it is absent rather than counting rows. |
| Rate limit | No fixed numeric cap; usage is load-scored per app/ad-account and reported via the `X-FB-Ads-Insights-Throttle` response header (`app_id_util_pct`, `acc_id_util_pct`), with HTTP calls rejected once utilization nears 100% |
| Incremental cursor | updated_time (campaign/adset/ad objects); date range (time_range/date_preset) for Insights — Ads Insights has no per-row modification timestamp, so incremental pulls must re-request a trailing window (commonly 7-28 days) because conversions continue attributing back to earlier report dates. |
| Webhooks | No |
| Bulk export | No |
| Deletes detectable | Yes — Filter campaign/adset/ad objects with `effective_status IN ["DELETED","ARCHIVED"]`; deleted objects stay queryable by ID (and can still return Insights via `ad.effective_status` filtering) for at least the 28 days after their last delivery date. |
What bites when replicating Facebook Ads
- Meta permanently removed the 7-day and 28-day view-through attribution windows from the Ads Insights API in January 2026 (`action_attribution_windows=7d_view`/`28d_view` stop returning data), so a connector storing historical conversion counts against those windows will see a step-change drop unrelated to real ad performance.
- Ads Insights rows keep changing after the fact as conversions attribute back to earlier dates; a connector that only pulls `date_preset=yesterday` and never re-pulls the trailing window will under-report historical days.
- Querying `/act_<AD_ACCOUNT_ID>/insights?level=ad` silently excludes deleted ads even though `/AD_ID/insights` on the same object still works, so an account-level incremental pull needs a separate pass with `ad.effective_status IN ["DELETED","ARCHIVED"]` to catch them.
- Rate limiting has no published numeric ceiling; instead the app/ad-account load score in the `X-FB-Ads-Insights-Throttle` header must be polled and backed off before it approaches 100%, or the call fails with `error_code = 4` (`CodedException`).
Popular destinations for Facebook Ads
Choose a destination below to open the ready pipeline page.
- AAirtable
Relational spreadsheet destination for ops and go-to-market teams.
View pipeline - AAmazon Athena
Serverless SQL over S3 data lake tables.
View pipeline - AAmazon DynamoDB
Serverless key-value and document store on AWS.
View pipeline - AAmazon QuickSight
AWS serverless BI with SPICE and embedded analytics.
View pipeline - AAmazon Redshift
AWS petabyte-scale warehouse with Spectrum.
View pipeline - AAmazon S3 Data Lake
Object storage landing zone for parquet and snapshots.
View pipeline - AApache Superset
Open-source BI for SQL exploration, charts, and dashboard publishing.
View pipeline - AAzure Data Lake Storage
ADLS Gen2 object storage for analytics workloads.
View pipeline - AAzure Synapse
Microsoft analytics workspace with SQL pools.
View pipeline
Facebook Ads connector FAQ
- What Facebook Ads data does the connector extract?
- 5 objects: campaigns, ad sets, ads, spend and conversion metrics. Each lands in its own table with types preserved; history-style objects (1: conversion metrics) load as append-only streams.
- Is the Facebook Ads integration incremental?
- Yes. After the initial full load, every run reads only records changed since the last watermark (updated-at or event timestamp) and applies an upsert or an append depending on the object.
- Where can I load Facebook Ads data?
- Into 43 destinations: relational databases, cloud warehouses, data lakes, spreadsheets and BI tools. Each Facebook Ads → destination pair has its own page with the object-to-table mapping.
Related Ads sources
Other sources in the same category, each with its own connector page.
Early access
Launch your Facebook Ads pipeline with guided onboarding
Join the waitlist to get priority access for Facebook Ads integrations with guided setup, schema-aware mapping, and production-grade incremental sync.