Jump to a popular page, or start typing.

    CONNECTIONS / BigQuery / BigQuery to Meta Custom Audience

    From BigQuery datasets to Meta lookalike and suppression seeds.

    Point Signals at the dataset behind a read-only service account, and it keeps Meta audiences synced as adds and removals so lists never drift on the cadence your scheduled query already keeps.

    bigquery -> meta-custom-audience :: live

    1. ● bigquery → meta.audience :: live
    2. > read audiences.segment_members rows=16,533
    3. hash sha256(email,phone) consent=filtered
    4. route meta deliver
    5. ✓ delivered · 14,053 matched

    WHAT THIS ENABLES

    BigQuery to Meta Custom Audience

    BigQuery to Meta Custom Audience: A scheduled query reads the customer segments in your BigQuery tables, and Signals keeps Meta audiences synced as adds and removals so lists never drift, hashed and consent-checked whenever the scheduled query reruns.

    • Signals keeps Meta audiences synced as adds and removals so lists never drift, reading your BigQuery tables whenever the scheduled query reruns.
    • Lookalike seeds and suppression lists that track your live customer base, fed by analytics engineers running BigQuery scheduled queries.

    WHAT FLOWS WHERE

    BigQuery to Custom Audience, mapped.

    A scheduled query hands the customer segments to Signals, which hashes and consent-filters each row before Meta's Custom Audiences API logs the match-ready audiences for audience refresh cadence.

    A scheduled query hands the customer segments to Signals, which hashes and consent-filters each row before Meta's Custom Audiences API logs the match-ready audiences for audience refresh cadence.

    WHO THIS IS FOR

    Built for the teams that own the number.

    Performance teams running first-party suppression and lookalike seeds, with the numbers already modeled in BigQuery tables and GA4 exports.

    Analytics engineers running BigQuery scheduled queries who need lookalike seeds and suppression lists that track your live customer base.

    HOW DATAHASH SETS IT UP

    From kickoff to verified events.

    1. Connect

      A read-only service account with dataViewer on the one dataset you nominate to feed Meta's Custom Audiences API, sized for audience refresh cadence.

    2. Map

      A scheduled query reads your BigQuery tables, and its columns map to Meta's Custom Audiences API in the visual mapper, hashed and checked for audience refresh cadence.

    3. Deliver

      Whenever the scheduled query reruns, Signals keeps Meta audiences synced as adds and removals so lists never drift, scans only the rows the query changed, with audience refresh cadence watched in the debugger.

    WHAT YOU GET

    What ships with this use case.

    Lookalike seeds and suppression lists that track your live customer base on every run, since Signals scans only the rows the query changed.

    Always-current lookalike seeds and exclusions, delivered whenever the scheduled query reruns without BigQuery slot cost climbing.

    Each run returns a match report on audience refresh cadence from Meta's Custom Audiences API, read from your BigQuery tables whenever the scheduled query reruns, at flat BigQuery slot cost.

    ON THE WIRE

    What Custom Audience actually receives.

    signals :: bigquery.meta-custom-audience :: wire

    1. ● signals :: audience upload
    2. > POST /customaudiences source=bigquery.audiences.segment_members
    3. schema ["EMAIL_SHA256","PHONE_SHA256"]
    4. num_received 16,533 · num_invalid_entries 406
    5. audience_id "1651440" · session "upsert"
    6. ✓ accepted match=85%
    FAQ

    Asked on almost every call.

    How often does the BigQuery Meta Custom Audience sync run?

    The scheduled query sets the pace: rebuild the customer segments nightly and delivery to Meta is nightly, or refresh hourly for an hourly feed. Each run only reads the rows the query changed, so lookalike seeds and suppression lists that track your live customer base stays current for audience refresh cadence while BigQuery slot cost barely moves.

    What match rate should a BigQuery-sourced Meta Custom Audience batch expect?

    Coverage in your BigQuery tables decides the rate, not BigQuery. A row with a current hashed email or phone matches; one missing both cannot, however the query is tuned. The first run's report from Meta's Custom Audiences API sets a baseline, the number performance teams running first-party suppression and lookalike seeds weigh against audience refresh cadence.

    NEXT STEP

    BigQuery to Meta Custom Audience, in production this week.