All resources

Free Facebook Ads to BigQuery Connector by OWOX: Take Control of Your Ad Data at Scale

Running Facebook Ads is one thing. Reporting on them at scale? Reporting on them at scale with a Facebook to BigQuery solution? That’s a whole different beast.

Exporting Facebook ad data into BigQuery often means costly ETL tools, complex pipelines, or constant engineering help -  barriers that slow down insights.

Google Apps Script pulling Facebook Ads data from platforms like Meta, TikTok, and Shopify into a Google Sheet.

Analysts deserve straightforward control over their own ad performance data, without needing a full tech stack.

That’s why we built this free, no-code Facebook Ads → BigQuery connector a part of the OWOX Data Marts (Community Apps Script Edition). It lets you load, refresh, and manage Facebook Ads data directly into BigQuery, with full transparency and zero vendor lock-in.

No limits, no black boxes. Just your Facebook Ads data to BigQuery, exactly where you need it.

Why We Made This Free Connector

Most Facebook Ads connectors are either expensive, limited in what they pull, or completely opaque in how they work. We wanted to flip that model on its head.

We believe analysts and marketers should own their data workflows, not rent them from third-party vendors.

So we built this open-source connector to give you:

  • Full access to all Facebook Ads API fields
  • Full control over how your data is extracted and loaded
  • A cost-free alternative to proprietary, paywalled solutions

This Facebook Ads to BigQuery connector is our first step toward a more open, self-owned future in marketing analytics.

Join the Open-Source Movement

We’re not just releasing a free connector – we’re inviting you to help shape the future of open marketing analytics tools.

At OWOX, we believe that data access and transparency should be a right, not a luxury. That’s why this connector is 100% open-source – giving you full control over how it works, what it does, and how far it can go.

If you like what we do, please ⭐ star our GitHub repo to show your support – it helps us reach more analysts and grow the number of available connectors.

Also, feel free to:

  • Explore the code and customize it to fit your needs.
  • Contribute to this data connectivity ecosystem: suggest new connectors, pull new connectors and / or documentation to support the wider community.
  • Join our community & share your feedback.

We’ve built the core, the foundation – now it’s your turn to take it further.

Why Bring Facebook Ads Data into BigQuery?

When it comes to running scalable marketing analytics, BigQuery is hard to beat. But getting raw Facebook Ads data into it? That’s where most teams hit a wall.

Complex pipelines that require engineering help
Limited access to raw data for modeling or enrichment
Expensive tools that gate key metrics or APIs

That’s exactly why we built this connector for Facebook ads to Google BigQuery – to unlock a better way.

✅ With BigQuery, you can structure and store Facebook Ads data at scale.
✅ You can blend it with Google Analytics, CRM, and cost data to build unified attribution models.
✅ You can automate daily updates and query performance across all channels using SQL.

This connector gives you the raw access, flexibility, and power needed to run marketing analytics your way – and at your scale.

And you don’t need to pay a cent or write a single line of backend code to get started.

Want even more control over your ad data?
If you're moving Facebook Ads to BigQuery, you’ll love what else you can connect, completely free and code-free:

Facebook Ads → Google Sheets

TikTok Ads → BigQuery
Reddit Ads → BigQuery
Twitter Ads → BigQuery

Unify your ad data, customize your analysis, and scale your reporting, your way.

Why OWOX’s Facebook Ads to BigQuery Connector Beats Other Tools

There’s no shortage of tools that push Facebook Ads data into BigQuery. Still, many come at a cost: restrictive pricing models, rigid pipelines, and limited visibility into what’s happening under the hood.

The OWOX connector was built to eliminate those problems:

  • 100% free and open-source — no usage fees, hidden limits, or tiered pricing.
  • Direct Facebook Ads → BigQuery flow — skips CSVs, third-party dashboards, or middlemen.
  • Full API coverage — extract any metrics, breakdowns, or dimensions available in Meta’s Ads API.
  • Own your schema — customize how data is structured, cleaned, and loaded inside BigQuery.
  • Complete transparency — view, edit, or extend every part of the pipeline using Apps Script.

You don’t have to settle for a black-box ETL or worry about how much data will cost this month.

If you want total control over how Facebook Ads data lands in your BigQuery project, with zero vendor lock-in, the OWOX connector is built for you.

How the Connector Works

We designed this connector to work out of the box for data analysts, marketers, and technical teams, as part of the OWOX Data Marts (Community Apps Script Edition), with no middleware or ETL platforms required.

Here’s what’s under the hood:

  •  It’s an open-source tool based on Google Apps Script that runs inside Google Sheets, where you set parameters and start your load.
  • The script pulls raw data from the Facebook Marketing API – including all available metrics, dimensions, breakdowns, and filters.
  • It loads your Facebook Ads data to BigQuery tables directly 

And yes – it’s 100% free and open, with no usage limits.

You can use it to:

  • Replace pricey ETL tools with a solution you wholly own, built on OWOX Data Marts (Community Apps Script Edition)
  • Schedule regular imports to keep your BigQuery tables fresh
  • Power Looker Studio dashboards and advanced models using clean, structured ad data

It’s the simplest, fastest way to start running Facebook Ads analysis in BigQuery – no waiting, no black boxes.

💡Check out this video for a step-by-step guide on connecting Facebook Ads to BigQuery using OWOX’s free template. It’s a quick and easy way to see the setup in action.

Step-by-Step: Import Facebook Ads Data to BigQuery with the Community Apps Script Edition

This is where the magic happens. In just a few minutes, you’ll have your Facebook Ads data flowing into BigQuery — no coding, no roadblocks, just results. Let’s walk through each step.

Step 1: Copy the Google Sheets Template ( ~1 min)

To streamline the setup process for your Facebook to BigQuery reporting, use our pre-configured BigQuery template – no need to build from scratch.

  1. Access the Template
  2. Create a Personal Copy
    • Go to File → Make a copy to save it to your Google Drive.

 Step 2: Configure the Template ( ~1 min)

Fill in the key settings that define what data you'll send and where.

  1. Set the Start Date
    • On the Config sheet, specify when the data import should begin.
      Note: Using a long date range may cause the import to fail due to data volume limits.
Date picker used to set the Start Date for importing Facebook Ads data in the OWOX Google Sheet template. i-shadow
  1. Add Your Facebook Ads Account ID(s)
Facebook Ads Manager interface showing where to find the Ad Account ID in the browser URL. i-shadow i-radius
  • Paste it into the corresponding field in the template.
      You can list multiple IDs, separated by commas, to pull data from several accounts.
Account ID field populated with Facebook Ad Account ID inside the OWOX Facebook Marketing Sheet. i-shadow
  1. Select the Data Fields
    • Navigate to the Fields tab.
    • Check the boxes for the metrics, breakdowns, and dimensions you want to include.
      Some fields may be preselected by default.
Arrow linking the Fields input in the config tab to the "Fields" tab in the spreadsheet. i-shadow

Further Specify the Fields with the Following Parameters:

  • Destination Dataset ID: Leave blank to load data into the currently open spreadsheet.
  • Destination Location: Destination Location is set to the default as US.
  • ReimportLookbackWindow: Days to look back when reimporting data (default: 2)
  • MaxFetchingDays: Max number of days to fetch per run (default: 31)

  1. Set Your BigQuery Destination
    • Dataset ID: Add the destination in this format → project_id.dataset_id
    • Location: Specify the BigQuery region for your dataset.
        If the dataset doesn’t already exist, it will be created automatically.
Destination Dataset ID field in the config tab filled with the BigQuery project and dataset name. i-shadow  i-radius

Step 3: Get a Facebook Ads Access Token ( ~1 min)

Authorize the connector to access your ad data using a secure token from Meta.

  1. Log Into Meta for Developers
Meta Ads homepage with login button highlighted for accessing Meta for Developers. i-shadow  i-radius
  • Sign in using your Facebook account.
    (Use the account that has access to your Meta Ads Business Manager.)

Meta for Developers login screen showing login options with Facebook or account creation.  i-shadow  i-radius
  1. Create a New App
    • Click My Apps in the top-right menu, then Create App
Meta dashboard with “My Apps” button highlighted to manage or create Facebook Apps. i-shadow  i-radius

 Meta Developer console showing the option to create a new app in the Apps section. i-shadow  i-radius
  • In the App Name field, enter a name of your choice.
App creation screen with OWOX App name entered and contact email field shown. i-shadow  i-radius
  • For the use case, select Other
Option selected to create an app without a use case under the “Other” category. i-shadow  i-radius
  • Choose Business as the app type → click Next
Selection of “Business” as the app type for managing Meta business assets. i-shadow  i-radius
  1. Connect to a Business Portfolio
    • Select the appropriate Business Portfolio
    • Click Create App
Business portfolio dropdown displayed while filling app creation details. i-shadow  i-radius
  1. Start Business Verification
    • Go to App Settings → Basic
Business verification section under App Settings showing the “Start Verification” button. i-shadow
  • If prompted, connect your app to your business portfolio.
Popup for selecting a business portfolio to begin business verification. i-shadow  i-radius
  • Click Start Business Verification
Dialog box with selected portfolio and “Start business verification” button highlighted. i-shadow  i-radius
  1. Submit Verification Info
    • Fill in the required fields with accurate contact and organizational information.
    • Ensure your submission meets Meta's requirements.
Security Centre in Meta Business Manager showing pending business verification. i-shadow  i-radius
  • Meta will review your submission within 2 business days.
Confirmation message stating business verification info was submitted. i-shadow  i-radius
  1. Set Up Marketing API
    • After successful verification, return to your app dashboard.
    • Locate the Marketing API card and click Set Up
Meta App Dashboard with Marketing API selected to set up for app integration. i-shadow  i-radius
  1. Grant Required Permissions
    • In the Tools section, enable the following scopes:
      • ads_read
      • Read_insights
Meta dashboard showing token permissions selection with checkboxes for ads_management, ads_read, and read_insights. i-shadow  i-radius
  1. Generate and Save Token
    • Click Get Token
Token generation screen with selected permissions and highlighted “Get Token” button in Meta developer portal. i-shadow  i-radius
  • Copy the generated access token and store it securely.
    To regenerate, go to Marketing API → Tools → User Token section.
Access token displayed in the Meta developer UI after permissions are selected and token is generated. i-shadow  i-radius

Once your token is ready, proceed to the next step to connect it to the Google Sheets template.

Step 4: Input Access Token into the Template ( ~10 seconds)

Now it’s time to link your access token to the template.

  1. Open the Credentials Menu
    • Go to the spreadsheet’s top menu → OWOX → Manage credentials
Google Sheets menu showing OWOX extension with the “Manage Credentials” option highlighted. i-shadow  i-radius
  1. Add Your Token
    • Paste the token you generated.
    • Click OK to save.
Access token input popup in Google Sheets prompting user to paste the Facebook Marketing API token. i-shadow

 Step 5: Import Data into BigQuery (~1 min)

Everything’s set – now launch your import.

  1. Start the Import
    • From the menu, click OWOX → Import New Data.
OWOX extension menu in Google Sheets with “Import New Data” option highlighted. i-shadow  i-radius
  1. Monitor the Logs
    • The Logs sheet will show “Import is finished” once complete.

  2. Check Your Data
    • Data will appear directly in BigQuery under the dataset you specified.
i-shadow  i-radius

Step-by-Step: Import Facebook Ads Data to BigQuery with the OWOX Community Edition

Set up a fully self-managed, SaaS-free pipeline to import Facebook Ads data directly into BigQuery using the OWOX Community Edition and a local server.

Step 1: Install Node.js and OWOX CLI ( ~2 min)

To run OWOX Data Mart locally, you’ll need to install Node.js and the OWOX CLI. This setup allows you to start a local server and work with the Community Edition effectively.

To get started, install the LTS version of Node.js from nodejs.org and use a version manager like nvm or nvm-windows to avoid permission issues. Once Node.js is set up, you can install the OWOX CLI globally and run ‘owox serve’ to launch the local server. 

For detailed setup instructions and troubleshooting, check the official documentation.

Step 2: Connect Google BigQuery and Set Up Your Data Mart ( ~3 min)

Set up BigQuery as your destination and link it to a new Facebook Ads data mart in OWOX.

 • Open your browser and go to http://localhost:3000.

Local host being redirected to the home page of OWOX Data Marts. i-shadowi-shadow
  • Click ‘New Storage’
New Storage being selected to set up the Facebook Ads Data Mart in OWOX. i-shadow
  • Choose ‘Google BigQuery’
Choosing the Storage type as Google BigQuery in OWOX Data Marts Community Edition. i-shadow
  • Fill in the following: 
    • Title: e.g., “Facebook Ads Storage”
    • Project ID: Your Google Cloud project ID
    •  Region: Must match your BigQuery dataset region
Form screen prompting the user to fill in storage details for OWOX Data Marts, including fields for Title, Project ID, and Region. i-shadow
  • Create and paste your Service Account JSON Key.
    • Go to Google Cloud Console → IAM → Service Accounts
Navigation panel in Google Cloud Console showing the path to access service accounts by going to IAM and then selecting the Service Accounts section. i-shadow
  • Create a new service account or choose an existing one:
    • Click Create Service Account
    • Fill in the Service Account Name, ID, and optionally a Description
    • Click Create and Continue
  •  Assign the following roles to the service account:
    • BigQuery Data Editor
    • BigQuery Job User
  • Generate a new authentication key:
    • On the Service Accounts page, select your service account
    • Go to the Keys tab
    • Click Add Key → Create new key
    • Select JSON format
    • Click Create to download the file
    • Open the downloaded JSON file in a text editor (e.g., Notepad, VS Code)
    • Copy the entire contents and paste it into the ‘OWOX Service Account JSON Field’
    • Don’t forget to click Save
OWOX connector configuration labeled ‘OWOX Service Account JSON Field’ where users paste their service account key for authentication. i-shadow

• Once storage is added, click on the Data Mart Tab then on ‘New Data Mart’

OWOX Data Marts interface showing the main dashboard with the ‘New Data Mart’ button. i-shadow

• Now create the Data Mart, name the title as ‘Facebook Data’, as the data source
• Choose the storage named ‘Facebook Ads Storage’ you just created

  • Click ‘Create Data Mart’.
Create Data Mart screen with title set to "Facebook Data" and storage selected as "Facebook Ads Storage". i-shadow

Now we will do the Data Setup

  • Go to Data Setup Tab and then select Connector
Input Setup section in OWOX Data Marts with 'Connector' selected as the definition type for the data source. i-shadow
  • Click on Setup Connector and Choose Facebook Ads Connector
Setup Connector panel in OWOX Data Marts with Facebook Ads selected as the connector source. i-shadow

Step 3: Get a Facebook Ads Access Token ( ~1 min)

To connect your Facebook Ads account, you’ll need an access token. 

  • Access Token: Repeat the steps from Step 3 of the Community Apps Script setup to generate your token, or use the same one if it's still valid.
Meta Developer portal showing access token generation. i-shadow

Step 4: Configure Facebook Ads Connector and Run Your First Import ( ~2 min)

Now that you’ve retrieved your Facebook Ads access token, it’s time to configure the connector in OWOX.

  • Paste the Access Token
OWOX connector configuration panel with the Facebook Ads access token field filled in for authentication. i-shadow
  • Account ID: Found in your Meta Ads Account Overview.
Facebook Ads Manager interface showing where to find the Meta Ad Account Overview. i-shadow
  • Paste the Account ID
Account ID being pasted into the appropriate field. i-shadow
  • Start Date: Set the reporting start date (e.g., 2025-07-01). This determines how far back data will be fetched.
Connector configuration form with the Start Date field set to 2025-07-01 for fetching data from Facebook Ads. i-shadow
  • Further Specify the Fields with the Following Parameters:
    • ReimportLookbackWindow: Days to look back when reimporting data (default: 2)
    • MaxFetchingDays: Max number of days to fetch per run (default: 31)
    • EndDate: The final date up to which data should be fetched.
    • CleanUpToKeepWindow: Number of days of data to retain during cleanup; older data is removed.
    • ApiBaseUrl: The base URL used to make requests to the Facebook Graph API.
    • ProcessShortLinks: Enables resolving and expanding short links found in the link_url_asset field.
    • MaxFetchRetries: Number of retry attempts allowed if a data fetch fails.
    • InitialRetryDelay: Time delay before making the first retry attempt after a failure.
  • Click Next
  • Endpoint: Choose the following valid endpoints:
    • ad-account/ads 

Avoid ad-group-insights, as it’s not implemented and will cause import failures.

Node selection menu for Facebook Ads with options like ad-account/ads. i-shadow
  • Fields: Select all available fields or choose specific metrics like clicks, spend, and impressions based on your reporting needs.
List of available fields from Facebook Ads API to include in the connector. i-shadow
  • Dataset Name: Enter the BigQuery dataset name where the imported data should be stored.
Final setup screen showing the target dataset and table path in BigQuery with time triggers hint enabled. i-shadow

Note: If the dataset doesn't exist, OWOX will create it automatically during the import process.

  • Click Finish

In the Data Setup Tab

  •  Click 'Save'.
OWOX Data Marts configuration screen showing successful mapping between Facebook Ads and BigQuery table with a Save button. i-shadow
  • Click 'Publish'.
OWOX Data Marts setup showing the 'Publish Data Mart ' button ready to be clicked to activate the data mart configuration. i-shadow
  • Click 'Manual Run' or use the 3-dot menu → 'Run Now'.
OWOX Data Marts interface with the ‘Manual Run’ button visible and the 3-dot menu expanded. i-shadow
  • Go to 'Run History' and confirm the message: 'Import is finished'.
Run History tab in OWOX Data Marts displaying the status message ‘Import is finished’. i-shadow

Step 5: View Imported Data in BigQuery ( ~1 min)

Check that your Facebook Ads data is now available in BigQuery.

Google Cloud Console homepage showing the Cloud Hub section with a selected project, confirming setup and navigation readiness for accessing BigQuery. i-shadow
  • Open the specified project and dataset.
Google Cloud Console displaying the project selection dialog, with a list of recent projects and folders available to open the correct BigQuery dataset. i-shadow
  • Click the Hamburger Menu in the top-left corner of Google Cloud Console to open the navigation panel. From there, go to Cloud Overview and then proceed to Welcome → BigQuery.
Choose BigQuery from Quick Access.i-shadow
  • Click the table that was created.
  • Use the 'Preview' tab or run SQL queries to inspect your data.
BigQuery table preview showing Facebook Ads data with fields confirming successful data import. i-shadow

Step 6: Schedule Automated Imports ( ~1 min)

Set up a trigger to pull data on a recurring schedule.

  • Go to the 'Triggers' tab.
  • Click 'Add Trigger'.
Triggers tab in OWOX Data Marts showing the option to add a new time trigger, with no scheduled triggers currently listed for the Facebook Data mart. i-shadow
  • Choose the Trigger Type as Connector Run and the Schedule Settings: Daily / Weekly / Monthly / Interval.
  • Set the Time (hour, minute, or second), days of the week, and choose your time zone.
Scheduled trigger setup screen in OWOX Data Marts showing trigger type and scheduling options for automating data runs. i-shadow
  • Click 'Create Trigger'. Your data will now refresh automatically.
OWOX Data Marts time trigger setup showing schedule details and the 'Create trigger' button to automate data refresh based on the selected configuration. i-shadow

The trigger is now active and scheduled to run automatically on the defined days and at the defined time.

OWOX Data Marts trigger summary screen showing active time trigger details, including schedule, status, and upcoming run for Facebook Data. i-shadow

📊 Real-Time Reporting with OWOX Reports

Want to take your BigQuery data to the next level?

Use the OWOX Reports Extension for Google Sheets to turn your Facebook Ads data in BigQuery into insightful reports in seconds, no SQL required.

With OWOX Reports, you can:
📥 Pull data directly from BigQuery into Google Sheets
📊 Build shareable, refreshable dashboards without Looker Studio
Empower your team with real-time access to ad performance metrics

No code, no queries, no delays. Just actionable reports – when and where you need them.

What’s Next?

This free connector is part of our effort to simplify and open up access to reliable, self-managed marketing data pipelines.

Here are more resources to explore:

🔗 More free connectors – including LinkedIn Ads and Microsoft Ads Connectors for BigQuery.

🎥 Step-by-step video tutorials – so you can follow along and set everything up with ease.

📊 Prebuilt dashboard templates – designed to help you get actionable insights instantly.

Check out our GitHub repo, leave us a ⭐ star, and let’s build better tools together.

FAQ

Is the Facebook Ads to BigQuery connector really free?
Do I need to know how to code to use this connector?
What kind of data can I import from Facebook Ads?
How often can I refresh the data in BigQuery?
Is my data secure when using this connector?
Can I modify or extend the connector for my needs?

You might also like

2,000 companies rely on us

Oops! Something went wrong while submitting the form...