Skip to content

Connect Meta Ads

Sign in with Facebook, pick your Meta ad accounts, and Crowflow pulls campaign-level daily insights into your Sheet. Same shape as Google and Microsoft, with a Meta-specific definition of Conversions.

4-min read, last updated 31 October 2026

What we’ll do

When you connect Meta, Crowflow asks for the ads_read scope: read-only access to insights for the ad accounts you pick. We use the Marketing API at version v22.0 and the /act_X/insights endpoint at campaign level with daily granularity.

You can revoke Crowflow’s access at any time from your Meta Accounts Center then Apps and websites.

Connect your account

  1. Sign in to Crowflow.
  2. Open Connections and click Connect Meta Ads.
  3. Sign in with the Facebook identity that has admin access to the ad account(s) you want synced.
  4. Approve the ads_read permission. You’re returned to Crowflow with a long-lived token (~60 days).

We auto-refresh the long-lived token before it expires, so a daily-sync workspace never sees a stale connection. If you’re away for long enough that the token does expire, Crowflow flips the connection to Reconnect needed.

Pick accounts to sync

On the Meta Ads connection page, click Load accessible accounts. Crowflow calls /me/adaccounts and lists every ad account you have read access to.

Toggle the accounts you want synced. Your plan sets how many ad accounts can sync at once, across all ad platforms combined (1 on Free and Starter, 2 on Pro and 25 on Agency). At the limit, deselect another account or upgrade. See plan limits.

What syncs, what doesn’t

Same opinionated daily schema as the other platforms:

  • Date
  • Platform (Meta Ads)
  • Campaign name
  • Impressions
  • Clicks
  • Conversions (see next section)
  • Spend (in account currency)

Meta returns much more in insights than we sync: breakdowns by age, gender, placement, device, time-of-day, etc. We deliberately don’t pull those. If you need deeper detail than campaign-level daily, Crowflow isn’t the right tool. Try Funnel.io or Supermetrics.

What counts as a Conversion?

Meta returns an actions array per row with dozens of possible action types (link clicks, engagement, video views, etc.). Crowflow sums only the ones that represent a business outcome:

  • Standard events: lead, complete_registration, purchase, subscribe, submit_application, start_trial, schedule, contact, find_location
  • Pixel offsite conversions: lead, purchase, complete_registration, subscribe, initiate_checkout, add_to_cart, custom
  • Onsite conversions (Meta-hosted): lead_grouped, purchase, complete_registration, messaging_conversation_started_7d
  • App events: mobile_app_install, mobile purchase, complete_registration, add_payment_info

Engagement-style actions (link_click, post_engagement, page_engagement, video_view, post_reaction) are not counted. If your account uses custom action types we haven’t mapped, email hello@crowflow.io with the names you see. We’ll extend the list.

First sync & refresh

The first sync starts by itself as soon as you pick an account. It brings in your last 30 days first, then fills in older months as far as your plan reaches (30 days on Free, 31 days on Starter, 6 months on Pro and 13 months on Agency). It usually takes 10 to 30 minutes, depending on how much data there is, and your newest numbers are always there first. You can connect Google Sheets in the meantime. Subsequent daily syncs pull the last 30 days, and Refresh now on the dashboard pulls fresh numbers whenever you want them.

A long history is fetched in stages, same as Google: each stage picks up from the month the last one reached, and the next stage starts by itself.

Troubleshooting

“Couldn’t load accounts” and no accounts listed. The Meta identity you connected has no access to any ad account. Check you signed in with the Facebook identity that has access to the ad account(s) you want synced.

Token expired / Reconnect needed. Meta’s long-lived token is good for ~60 days. Crowflow auto-refreshes within the last 7 days of validity; if the connection sits idle past then, the next refresh will fail and the dashboard prompts a reconnect.

Conversions column shows 0. Either your campaigns had no conversions in the period, or they fire an action type we don’t map. See What counts as a Conversion? and email us if you think we missed one.

Related help