DatriseAI-first ETL

Source connector

Meta Ads connector

Meta Ads integration for databases, warehouses and BI tools

Facebook and Instagram ad source for spend and engagement. Datrise captures Meta Ads entities such as campaign spend, impressions, clicks, conversions, and audience segments, then lands normalized and typed models for warehouse reporting, attribution, and AI workflows.

The Meta Marketing API v26.0 (Ads Insights + Ads Management, on the Graph API) authenticates with OAuth 2.0, incremental runs key on updated_time, and Meta Ads caps calls at Business Use Case (BUC) formula, not a flat number: Ads Insights calls/hour = 600 + 400 x active ads (Standard access) or 190,000 + 400 x active ads (Advanced access); Ads Management calls/hour = 300 + 40 x active ads (Standard) or 100,000 + 40 x active ads (Advanced) - throttling begins when the `X-Business-Use-Case-Usage` header's `total_cputime` or `total_time` reaches 100%.

Of the 5 objects, 3 sync as upserts keyed on the primary key and 2 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 `meta_ads_campaign_spend`) with a schema derived from the Meta 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 Meta Ads pipeline page, and join the waitlist to get the Meta Ads connector (Ads) with guided onboarding.

Incremental syncSchema-aware mapping43 destinations available

What Meta 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.

ObjectLanding tableSync mode
campaign spendmeta_ads_campaign_spendUpsert by primary key, incremental on updated-at
impressionsmeta_ads_impressionsAppend-only, incremental by timestamp
clicksmeta_ads_clicksAppend-only, incremental by timestamp
conversionsmeta_ads_conversionsUpsert by primary key, incremental on updated-at
audience segmentsmeta_ads_audience_segmentsUpsert by primary key, incremental on updated-at

Meta Ads API: setup facts for the connector

Verified against the vendor documentation on 2026-09-02. Unknown values are left blank rather than guessed.

APIMeta Marketing API v26.0 (Ads Insights + Ads Management, on the Graph API)
AuthenticationOAuth 2.0 — Requests use a System User or user access token obtained via Meta's OAuth flow, scoped with `ads_read`/`ads_management` permissions and tied to a Business Manager asset.
Paginationcursor — Graph API list responses page via `paging.cursors.before`/`after` opaque cursors rather than page numbers or offsets.
Rate limitBusiness Use Case (BUC) formula, not a flat number: Ads Insights calls/hour = 600 + 400 x active ads (Standard access) or 190,000 + 400 x active ads (Advanced access); Ads Management calls/hour = 300 + 40 x active ads (Standard) or 100,000 + 40 x active ads (Advanced) - throttling begins when the `X-Business-Use-Case-Usage` header's `total_cputime` or `total_time` reaches 100%.
Incremental cursorupdated_time — Campaign/ad set/ad objects expose an `updated_time` field for entity-level incremental sync; Insights (performance metrics) has no comparable cursor and is instead pulled by `time_range`/date, with data continuing to adjust for up to 28 days after the fact.
WebhooksYes — Graph API Webhooks (object change subscriptions for Page/App-level objects; not offered at the ad-account level for insights or ad-entity status)
Bulk exportYes — Asynchronous Ads Insights report jobs (`POST <object>/insights` -> poll `async_status`/`async_percent_completion` -> `GET <report_run_id>/insights`)
Deletes detectableYes — Deleted campaigns, ad sets, and ads are not removed from the API; they persist with `effective_status`/`configured_status` set to `DELETED`, so a connector must watch for that status flip rather than for the object's disappearance.

Official API reference

What bites when replicating Meta Ads

  • Insights numbers are not final for up to 28 days after the fact (and can keep shifting for days after a campaign ends), so a connector that treats a daily insights pull as immutable will silently under- or over-report historical metrics; re-pull recent date ranges on a rolling window.
  • Async Insights report jobs can take up to an hour to complete (including Meta's own retries) and reach-based breakdowns on data older than 13 months are capped at 10 async requests per ad account per day, tracked via the `X-Fb-Ads-Insights-Reach-Throttle` header.
  • Rate limiting is not a fixed request budget: the Business Use Case formula scales with the number of currently active ads and access tier (Standard vs Advanced), so the same app's safe call volume changes as the advertiser's account grows or shrinks, and must be read from the `X-Business-Use-Case-Usage` response header rather than hard-coded.
  • "Meta Ads" and "Facebook Ads" are the same underlying platform and the same Marketing API/Insights API — there is no separate Meta-branded API to integrate against; Instagram ad delivery is also served through this same API.

Compare this against every other documented API

Popular destinations for Meta Ads

Choose a destination below to open the ready pipeline page.

  • A
    Airtable

    Relational spreadsheet destination for ops and go-to-market teams.

    View pipeline
  • A
    Amazon Athena

    Serverless SQL over S3 data lake tables.

    View pipeline
  • A
    Amazon DynamoDB

    Serverless key-value and document store on AWS.

    View pipeline
  • A
    Amazon QuickSight

    AWS serverless BI with SPICE and embedded analytics.

    View pipeline
  • A
    Amazon Redshift

    AWS petabyte-scale warehouse with Spectrum.

    View pipeline
  • A
    Amazon S3 Data Lake

    Object storage landing zone for parquet and snapshots.

    View pipeline
  • A
    Apache Superset

    Open-source BI for SQL exploration, charts, and dashboard publishing.

    View pipeline
  • A
    Azure Data Lake Storage

    ADLS Gen2 object storage for analytics workloads.

    View pipeline
  • A
    Azure Synapse

    Microsoft analytics workspace with SQL pools.

    View pipeline

Meta Ads connector FAQ

What Meta Ads data does the connector extract?
5 objects: campaign spend, impressions, clicks, conversions and audience segments. Each lands in its own table with types preserved; history-style objects (2: impressions and clicks) load as append-only streams.
Is the Meta 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 Meta Ads data?
Into 43 destinations: relational databases, cloud warehouses, data lakes, spreadsheets and BI tools. Each Meta 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 Meta Ads pipeline with guided onboarding

Join the waitlist to get priority access for Meta Ads integrations with guided setup, schema-aware mapping, and production-grade incremental sync.