All resources

Free Microsoft Ads to BigQuery Connector by OWOX: Centralize, Scale, and Own Your Search Data

Advertising on Microsoft Ads (Bing Ads) is easy. But accessing and using that data in BigQuery? That’s where things get complicated.

If you’ve ever tried exporting Microsoft Ads data manually, you’ve felt the frustration. Manual exports slow you down - with outdated numbers, messy formatting, and no control over field selection or refresh cycles.

That changes now.

Dashboard showing Facebook Ads data flowing into BigQuery storage and exporting to Google Sheets, Looker Studio, Excel, Tableau, and Power BI. i-radius

With this free, no-code connector from OWOX built on OWOX Data Marts (Community Edition), you can seamlessly import, refresh, and manage Microsoft Ads data in BigQuery in just a few clicks. 

Best of all, you maintain full control over your Bing Ads to BigQuery flow: performance metrics, spend, and structure - all right inside BigQuery. 

Why We Made This Free Connector

At OWOX, we believe analysts shouldn’t have to rent access to their own Microsoft Ads (Bing Ads) data or waste time wrestling with manual exports and rigid dashboards just to run performance analysis.

That’s why we built this connector and made it completely free. No subscriptions, no feature restrictions, and no hidden limits on what you can do when sending data from Bing Ads to BigQuery.

Our goal is to help data and marketing teams take full control of their reporting workflows - without relying on slow, third-party tools. With this connector, you get the transparency, flexibility, and ownership to analyze your Microsoft Ads data directly in BigQuery.

Whether you're monitoring budgets, tracking campaign performance, or fueling advanced reporting pipelines, this connector, built on OWOX Data Marts (Community Edition), gives you unrestricted access to the metrics that matter, with zero compromise.

Join the Open-Source Movement

We’re not just releasing a free connector – we’re inviting you to help shape the future of 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 by suggesting new connectors, pulling new connectors, and/or providing documentation to support the wider community.
  • Join our community & share your feedback.

Why Choose OWOX Free Connector for Microsoft Ads to BigQuery

Most data tools claim to simplify Microsoft Ads integrations, but under the surface, they often restrict access, obscure processes, or rely on closed systems you can't fully trust or modify.

The OWOX connector is different.

It’s built for data analysts, digital marketers, and reporting teams who need clarity, precision, and autonomy over how Microsoft Ads data lands in BigQuery.

  • Direct Microsoft Ads → BigQuery flow — skips CSVs, staging layers, and 3rd-party services in between.
  • Transparent by design — inspect the open-source code to understand and adapt every step of your data flow
  • Customizable logic — adjust filters, field mappings, or workflows to fit your specific reporting requirements
  • Completely free and open-source – no fees, limits, or pricing tiers. This connector is available on GitHub as part of OWOX Data Marts Community Edition.
  • Schema control — Define your destination table, assign clear field aliases, and adjust the structure to align with your reporting requirements.

Whether you're troubleshooting performance issues, feeding BI pipelines, or fueling multi-source attribution, this connector gives you more than access; it gives you ownership.

Microsoft Ads Connector to Google BigQuery

Why Bring Microsoft Ads Data into BigQuery?

If you've ever tried digging into Microsoft Ads performance beyond native dashboards, you know the struggle:
Rigid reporting formats with limited customization
No simple way to merge Microsoft Ads data with, CRM, or other platforms
Expensive ETL tools that increase your costs as you scale

That’s where BigQuery becomes a game-changer — and this free connector makes the integration seamless:
✅ Send raw Microsoft Ads data directly into BigQuery for flexible, SQL-powered analysis
✅ Join it with data from Salesforce, internal tools, or offline conversions
✅ Build refreshable dashboards and pipelines without manual exports or third-party tools

Connecting Bing Ads to BigQuery gives you full ownership  — scalable, transparent, and built for custom reporting.

And with the OWOX connector, it’s 100% free and requires zero coding

Check out our other free connectors:
Already loving the freedom of custom reports? Don’t stop here. You can also connect:

Microsoft Ads → Sheets

Facebook Ads → BigQuery

LinkedIn Ads → BigQuery
Twitter Ads → BigQuery

No fees, no code—only faster, smarter reporting across every ad channel.

How the Connector Works

This Microsoft Ads to BigQuery connector delivers what most tools leave out — full flexibility without the overhead.

It runs entirely in your own environment with OWOX Data Marts (Community Edition), built on open-source code, with no third-party services or platforms involved.

Here’s how it works:

  • Connects directly to the Microsoft Ads API to fetch campaign, ad group, keyword, and performance data.
  • Sends that data straight into your BigQuery tables — no CSV downloads, manual uploads, or data wrangling in between.
  • Gives you full transparency and control — define your schema, configure settings, and manage refresh schedules on your terms.

Completely free,  no hidden fees, no locked features, and no usage restrictions.

If you want to bypass costly ETL tools and take control of your Microsoft Ads reporting in BigQuery, this connector is built for you.

💡Check out this video for a clear, step-by-step walkthrough of the free Microsoft Ads to BigQuery connector. It shows how to automate your ad data setup quickly and effortlessly.

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

Set up a fully self-managed, SaaS-free pipeline to import Microsoft 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 Microsoft Ads data mart in OWOX.

  1. Open your browser and go to http://localhost:3000.
Local host being redirected to the home page of OWOX Data Marts. i-shadow

💡 Follow our guide, where you’ll find easy-to-follow instructions on how to configure your storage in OWOX Data Marts.

  1. Create and paste your Service Account JSON Key.
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
  1. Paste the JSON file content into the ‘Service Account Field’ under Authentication.
  • 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
  1. Create your first Data Mart
  • 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 ‘Microsoft Data’, as the data source
  • Choose the storage named ‘Microsoft Ads Storage’ you just created
  • Click ‘Create Data Mart’.
Create Data Mart screen with title set to "Microsoft Data" and storage selected as "Microsoft Ads Storage". i-shadow

Now we will do the Data Setup.

  1. Setup your Data Mart
  • 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 Microsoft Ads Connector
Setup Connector panel in OWOX Data Marts with Bing Ads selected as the connector source i-shadow

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

Let's follow the steps to get the Microsoft Ads Access Token:

Prerequisites

  • A Microsoft Ads account with access to the campaigns you want to pull data from.
  • A Microsoft Azure account to register an application for API access.
  • Ability to generate:
    • Account ID and Customer ID (from the Microsoft Ads dashboard).
    • Developer Token (via Developer Settings).
    • Client ID and Client Secret (from your Azure App).
    • Refresh Token (exchanged from the Authorization Code).

Steps to Obtain Credentials

To authorize the connector, you’ll need to generate the following Microsoft Ads credentials:

  • Account ID
  • Customer ID
  • Developer Token
  • Client ID
  • Client Secret
  • Refresh Token
  1. Register an App in Microsoft AzureIf you haven’t already, sign up and log in to the Microsoft Azure Portal.
    • In the search bar, type and select App registrations.
Azure Portal with “App registrations” selected from the service list. i-shadow
  • Click New registration and fill out the form:
  • Name – Choose any name for your app (e.g., OWOX Connector)
  • Supported account types – Select:  Accounts in any organizational directory (Any Microsoft Entra ID tenant - Multitenant) and personal Microsoft accounts
  • Redirect URI:
    1. Platform: Web
    2. URI: http://localhost:8080
  • Click Register.
Azure App registration screen showing name field and redirect URI for Bing Ads integration. i-shadow
  1. Save your Client ID
    • Copy and save your Client ID
Azure portal showing the OWOX App overview page, highlighting the Application (client) ID field with its GUID value boxed in red and a “Copy to clipboard” tooltip visible. i-shadow
  1. Generate a Client Secret
    • In your registered app, go to:
      Client credentials → Add a Certificate & secrets
    • Click on New client secret
Microsoft Azure App registration page showing OWOX App with an arrow pointing to "Add a certificate or secret" under Client credentials. i-shadow
  • Description: e.g., “Client secret for OWOX App”
  • Expiration: Choose the maximum allowed (e.g., 730 days)
  • Click Add
Azure Certificates & secrets page showing form to add a new client secret with fields and the Add button highlighted. i-shadow

⚠️ Important: Copy and save the secret now. You won’t be able to retrieve it later.

Microsoft Azure panel with “New client secret” form filled and copy button highlighted. i-shadow
  1. Retrieve Account ID and Customer ID
    • Visit ads.microsoft.com and log in.
    • Your Account ID and Customer ID are located in the URL after login.
Bing Ads dashboard URL showing Customer ID and Account ID in the address bar. i-shadow
  1. Generate a Developer Token
    • In the Bing Ads interface, go to:
      SettingsDeveloper Settings 
Navigating to Developer settings in Microsoft Ads by selecting “Settings” from the left menu and clicking “Developer settings” in the dropdown. i-shadow
  • Now, click on Request Token, and copy the generated Developer Token.
Microsoft Ads Developer Settings page showing “Request Token” option highlighted. i-shadow
  1. Generate Authorization Code
    • Replace CLIENTID in the following URL with your actual Client ID:
https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=CLIENTID&response_type=code&redirect_uri=http://localhost:8080&scope=https://ads.microsoft.com/msads.manage offline_access
M.C519_BAY.2.U.0a895e39-774a-e677-b4bb-8589ce3e0beb
  1. Exchange Authorization Code for Refresh Token
    • Use ReqBin or Postman to exchange this code for a refresh token by making a POST request to:
    • Use the following parameters in the body:
      https://login.microsoftonline.com/common/oauth2/v2.0/token 
 Postman window showing how to send a POST request to the Microsoft OAuth token URL using the Body tab with Form (url-encoded) selected. i-shadow
Postman window showing a POST request with form parameters and ampersands after each key-value pair, highlighting the Send button. i-shadow
  1. Save the Refresh Token
    • If successful, the response will include a Refresh Token
    • Save it securely. This token will be used to authenticate API requests going forward.
Postman response window showing a successful 200 OK status with a JSON body containing token details, including token type, scope, access token, and refresh token. i-shadow

Troubleshooting Refresh Token Errors

If you face issues while obtaining the refresh token, review the following common errors, causes, and solutions:

  1. Error: Invalid client secret provided
    • Cause: You’re using the Secret ID instead of the Secret Value. Only the Secret Value can authenticate your app — the Secret ID will not work.
    • Solution: Go back to Step 2 and ensure you copied the Secret Value, not the ID. If the Secret Value is no longer visible, create a new Client Secret and copy the value immediately.
Azure portal showing the Client secrets tab with the secret value field and copy icon highlighted. i-shadow


  1. Error: The provided value for the 'code' parameter is not valid. The code has expired.
    • Cause: The temporary authorization code has expired. Microsoft and similar platforms issue short-lived codes that must be exchanged for tokens within a few minutes.
    • Solution:
      1. Repeat Step 5 to obtain a new authorization code.
      2. Retry the request immediately after receiving it.

Tip: Always use the authorization code right after generating it to avoid expiration issues.

Security Notes

  • Keep your Client Secret, Developer Token, and Refresh Token private, never share them publicly.
  • Store tokens securely using environment variables or a secrets manager.
  • Refresh tokens periodically to prevent expired credentials from interrupting pipelines.
  • Always request the minimum scope required (msads.manage offline_access) for better security.

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

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

  1. Paste the Developer Token, Client ID, Client Secret, and Refresh Token
OWOX connector configuration panel with the Microsoft Ads developer token field filled in for authentication. i-shadow
  1. Find your Account ID
  • Log in to ads.microsoft.com, and you'll find your Account ID and Customer ID in the URL after login.
Bing Ads dashboard URL showing Customer ID and Account ID in the address bar.
  • Paste the Account ID and Customer ID
Account ID being pasted into the appropriate field. i-shadow
  1. Start Date
  • Set the reporting start date (e.g., 2025-09-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 Microsoft Ads. i-shadow
  1. As you scroll further, you’ll find extra parameter fields. They’re optional for the first run and can be updated later if required.
  2. Click Next
  1. Endpoint: Choose the following valid endpoints:
    • Bing Ads performance report: Provides aggregated insights into campaign performance metrics, including impressions, clicks, conversions, spend, and average CPC.
    • Bing Ads Campaigns: Delivers structural and configuration data for each campaign, such as campaign name, ID, status, budget, targeting settings, and scheduling.

👉 Tip for first-time setup: If you’re new to Bing Ads integration, start with the Bing Ads Performance Report endpoint. It offers a comprehensive yet manageable view of your advertising data, covering spend, clicks, conversions, targeting, and delivery performance.

Node selection menu for Microsoft Ads, with options like Bing Ads Performance Report. i-shadow
  1. Select Fields for chosen node.  
  • Select all available fields or choose specific metrics like account id, bidmatch type , and campaign type based on your reporting needs.
List of available fields from Microsoft Ads. API to include in the connector. i-shadow
  1. Name the Dataset
  • 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.

  1. Click Finish

10. In the Data Setup Tab, Click 'Save'.

OWOX Data Marts configuration screen showing successful mapping between Microsoft Ads and BigQuery table with a Save button. i-shadow

11. Click 'Publish Data Mart'.

OWOX Data Marts setup showing the 'Publish Data Mart ' button ready to be clicked to activate the data mart configuration. i-shadow

12. Click 'Manual Run' or use the 3-dot menu. 

OWOX Data Marts interface with the ‘Manual Run’ button visible and the 3-dot menu expanded. i-shadow

13. A configuration panel will appear to choose a Run Type. Select Backfill or Incremental Load. Then add the required start and end dates, then click Run to load the data. 

Please Note: If you are setting up this connector for the first time, you need to go with the Backfill Run Type.

Manual Run configuration panel in OWOX Data Marts showing run type options and fields to set start and end dates. i-shadow

14. Go to 'Run History' and confirm the message: ‘Success’.

Run History tab in OWOX Data Marts displaying the status message ‘Import is finished’. i-shadow

Step 5: Schedule Automated Imports ( ~1 min)

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

  1. Go to the 'Triggers' tab in the new Data Mart
  • 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 Microsoft Data mart. i-shadow
  1. Configure:
  • 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
  1. 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
  1. 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 Microsoft Data. i-shadow

What’s Next?

The free Microsoft Ads to BigQuery connector in OWOX Data Marts continues our mission to make data ownership simple, transparent, and accessible to everyone.

Here are more resources to explore:

🔗 Additional free connectors – including Criteo Ads, TikTok Ads Connector to BigQuery, and other top platforms
🎥 Easy-to-follow video tutorials – to guide you through every setup step
📊 Ready-made dashboard templates – deliver BigQuery data to popular destinations like Google Sheets and Looker Studio, so teams can access insights faster and with less effort.

Explore our GitHub repo, drop us a ⭐ star, and help us shape the future of open marketing analytics.

Microsoft Ads Connector to Google BigQuery

FAQ

Is the Microsoft (Bing) Ads to BigQuery connector really free to use?
What Microsoft (Bing) Ads data can I import with the OWOX connector?
Can I combine Microsoft Ads data with GA4, CRM, or other sources in BigQuery?
How often can I refresh the Microsoft Ads data?
How do I set up access to pull data from Microsoft (Bing) Ads?

You might also like

2,000 companies rely on us

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