Free Microsoft Ads to Google Sheets Connector by OWOX: Optimize Campaign Reporting Without Code
Free connector to send Microsoft Ads data to Google Sheets. Automate reporting and unlock powerful insights, no engineering required.

Running ads on Microsoft (Bing) is simple. But accessing and working with that data in a spreadsheet? That’s where it gets messy.
If you’ve tried to export Microsoft (Bing Ads) data to Google Sheets manually, you know the pain: outdated CSVs, clunky dashboards, and zero control over what’s pulled.
That ends today.

With this free, no-code connector from OWOX, built on OWOX Data Marts (Community Apps Script Edition), you can import, refresh, and customize Microsoft Ads data in Google Sheets in just a few clicks.
Why We Made This Free Connector
At OWOX, we believe marketers shouldn’t have to rent access to their own Microsoft Ads data or struggle with outdated dashboards and manual exports just to analyze campaign performance.
That’s why we built this connector and made it 100% free. No subscriptions, no feature caps, and no hidden limitations on how you use your data in Google Sheets.
Our mission is to help marketing teams move faster by owning their reporting workflows, without relying on clunky third-party tools. With this connector, you get the transparency, flexibility, and control you need to build your Microsoft Ads reports directly in Sheets.
Whether you're optimizing spend, tracking performance, or building client-facing dashboards, this tool gives you full access to the numbers that matter, without compromise.
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 by suggesting new connectors, pulling new connectors, and/or providing documentation to support the wider community.
- Join our community & share your feedback.
Why the OWOX Microsoft Ads to Google Sheets Connector Gives You True Control
There are plenty of tools that help you send Microsoft Ads data into Google Sheets. Still, most of them come with strings attached: limited field selection, slow refresh intervals, hidden fees behind “no-code” labels, or black-box connectors that don’t show you what’s happening behind the scenes.
The OWOX connector changes that.
It’s 100% free, fully open-source, and purpose-built to serve the exact needs of digital marketers and analysts who want reliable Microsoft Ads reporting inside Google Sheets, without giving up control or transparency.
- Built specifically for Microsoft Ads → Google Sheets workflows — not a generic connector that treats all sources the same.
- Direct access to Microsoft Ads API — choose any metrics, dimensions, or breakdowns you need for your reporting.
- Powered by Google Apps Script — your data flows directly into your spreadsheet with no third-party servers or data hosting.
- Editable and auditable — see and modify the script yourself, adapt it to your business logic, and never wonder how your data is processed.
- Zero usage limits — no row caps, no token gating, no upgrade prompts. Just clean, structured data delivered your way.
Other platforms may help you build a one-off report. However, the OWOX Data Marts (Community Apps Script Edition), is designed for teams that want ongoing, flexible, and fully transparent Microsoft Ads reporting in Google Sheets, on their terms, at their pace, with their own logic.
Why Bring Microsoft Ads Data into Google Sheets?
If you've ever tried analyzing Microsoft Ads performance beyond the built-in reports, you already know the pain:
❌ Limited customization and inflexible reporting formats
❌ No straightforward way to combine Microsoft Ads data with other platforms
❌ Paid connectors that scale up your costs with usage
That's where Google Sheets becomes a powerful alternative – and this free connector makes it even better.
✅ With Google Sheets, you can reshape your Microsoft Ads data to fit your unique reporting needs
✅ Easily blend performance data with CRM, GA4, or offline conversions
✅ Automate dashboards, share live insights, and ditch manual exports for good
Connecting Microsoft Ads (Bing Ads) to Google Sheets puts you in control, flexible, scalable, and fully transparent.
And with the OWOX connector, it’s completely free and code-free.
Check Out More Free Connectors:
Already transforming your Microsoft Ads reporting in Google Sheets? Don’t stop here.
You can also Connect:
Microsoft Ads→ BigQuery
Twitter Ads → Google Sheets
Criteo Ads → Google Sheets
LinkedIn Ads → Google Sheets
No paywalls. No black boxes. Just smarter reporting—on your terms.
How the Connector Works
We built this Microsoft Ads connector using OWOX Data Marts (Community Apps Script Edition) on Google Apps Script. No external platforms, sync services, or subscription traps required. Everything happens inside your spreadsheet.
Here’s what powers the Microsoft Ads → Google Sheets integration:
- Leverages Google Apps Script so you can inspect, modify, or extend the code however you like, full transparency.
- Fetches raw Microsoft Ads data (accounts, campaigns, ad groups, performance metrics) directly via the Microsoft Advertising API.
- Gives you precise control over what’s imported, from account and customer IDs to custom field selections and time zones.
- Automatically pastes clean, structured, deduplicated data into named tabs inside your Google Sheet.
This connector is 100% free and open-source. No upgrade tiers, no row limits, no forced logins, just your Microsoft Ads data, exactly how and where you need it.
💡Want a clearer look at how it works?
Check out the video down below to see how the Microsoft Ads to Google Sheets connector helps you automate ad data delivery, no manual exports required.
Step-by-Step: Import Microsoft Ads Data to Google Sheets
This connector lets you bring raw Microsoft Ads data straight into your spreadsheet, without writing a single line of code.
Here’s how to get started:
Step 1: Copy the Google Sheets Template ( ~1 min)
Start with a ready-made template designed for Microsoft Ads– no need to build one from scratch.
- Copy the Microsoft Connector template in Google Sheets.
- Rename the copy as desired.
Step 2: Configure the Template ( ~2 min)
Before importing, you'll need to fill out a few key fields in the template. This setup tells the connector what to fetch and where to send the data.
- Fill in the Start Date
- In the Config sheet of your copy of the template, specify the Start Date when the data import should begin.
- Note: Using a long date range may cause the import to fail due to high data volume.

- Locate Account ID and Customer ID
- Log in to ads.microsoft.com.
- You’ll find both the Account ID and Customer ID in the browser’s address bar.

- Paste these values into the corresponding fields in the Config sheet.

- Select the Fields You Need
- Go to the Fields tab in the spreadsheet.
- Check the boxes next to the metrics and dimensions you'd like to import.

- Choose Aggregation Level
- In the Settings sheet, use the dropdown to choose how your data should be aggregated (e.g., Daily, Weekly).
- Refer to the Microsoft Ads documentation to learn more.

- Define the Reporting Timezone
- Pick the correct timezone for how your reporting dates should align.

Further Specify the Fields with the Following Parameters:
- Destination Spreadsheet – Leave blank to load data into the currently open spreadsheet.
- ReimportLookbackWindow: Days to look back when reimporting data (default: 2)
- MaxFetchingDays: Max number of days to fetch per run (default: 31)
Step 3: Obtain Credentials for the Microsoft Ads Source ( ~5 min)
To authorize the connector, you'll need to generate the following credentials:
- Account ID
- Customer ID
- Developer Token
- Client ID
- Client Secret
- Refresh Token
Let’s break down how to do it step-by-step.
1. Register an App in Microsoft Azure
- If you haven’t already, sign up and log in to the Microsoft Azure Portal.
- In the search bar, type and select App registrations.

- 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:
- Platform: Web
- URI: http://localhost:8080
- Click Register.

2. Generate a Client Secret
- In your registered app, go to:
Client credentials → Certificates & secrets → New client secret

- Description: e.g., “Client secret for OWOX App”
- Expiration: Choose the maximum allowed (e.g., 730 days)
- Click Add

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

- At this point, you have:
- Client ID
- Client Secret
- Redirect URI: http://localhost:8080
3. 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.

4. Generate a Developer Token
- In the Bing Ads interface, go to:
Settings → Developer Settings → Request Token

- Copy the generated Developer Token.

5. 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
- Open the link in your browser, log in, and click Accept.
- After accepting, you’ll be redirected to a page like: http://localhost:8080/?code=YOUR_CODE
- Copy the code parameter from the URL.
- Example:
If the URL is: http://localhost:8080/?code=M.C519_BAY.2.U.0a895e39-774a-e677-b4bb-8589ce3e0beb
- Then your Authorization Code is:
M.C519_BAY.2.U.0a895e39-774a-e677-b4bb-8589ce3e0beb
6. Exchange Authorization Code for Refresh Token
- Make a POST request to this endpoint:
https://login.microsoftonline.com/common/oauth2/v2.0/token
- Use the following parameters in the body:
- client_id = YOUR_CLIENT_ID
- client_secret = YOUR_CLIENT_SECRET
- grant_type = authorization_code
- code = YOUR_AUTHORIZATION_CODE
- redirect_uri = http://localhost:8080
- scope = https://ads.microsoft.com/msads.manage offline_access

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

Step 4: Input Access Token into the Template ( ~1 min)
- Open the Credentials Menu
- From the top menu in your Google Sheet, go to → OWOX → Manage Credentials

- In the Bing Credentials section, enter the Account ID, Customer ID, Developer Token, Client ID, Client Secret, and Refresh Token.

Step 5: Run the Connector & Import Your Data ( ~1 min)
- Once your credentials are saved, go to:
OWOX → Import New Data

- The process is complete when the Log sheet shows:
"Import is finished." - The data will appear in new tabs labeled with the corresponding data types.

Note: To import more data:
- Select additional fields in the Fields tab.
- Go to OWOX → Import New Data again
📊 Real-Time Visualization with OWOX BigQuery Data Marts
Want to make the most of your Microsoft Ads data?
Use the OWOX BigQuery Data Marts to turn raw ad data into live, interactive dashboards, without any coding or Looker Studio setup.
With OWOX BigQuery Data Marts, you can:
📥 Pull data directly into Google Sheets
📊 Build refreshable dashboards for your team
✅ Share campaign insights across departments
No SQL. No copy-paste. Just seamless, real-time reporting from Microsoft Ads (Bing Ads) to Google Sheets.
What’s Next?
This free connector reflects our vision to empower analysts with full control over their marketing data.
Here are additional resources you can explore:
🔗 More free connectors – including Reddit Ads, Facebook Ads Connector for Google Sheets, and more.
🎥 Step-by-step video tutorials – so setup is simple for every user.
📊 Prebuilt dashboard templates – to help you get insights instantly.
Check out our GitHub repo, leave us a ⭐ star, and let’s build better tools together.
Frequently asked questions
Yes, the connector is 100% free, with no usage limits, feature caps, or paid plans. You get full access to all features and data, with complete transparency.
No coding is required. Just copy the template, enter your credentials, and click "Import New Data." Everything runs inside Google Sheets with a point-and-click setup.
You’ll need your Account ID, Customer ID, Developer Token, Client ID, Client Secret, and Refresh Token. The setup guide walks you through generating each one.
In the Google Sheets template, data appears in dedicated tabs based on the selected fields. If using BigQuery, it’s written to the dataset you specified in the config.
Yes. Once set up, you can schedule daily or hourly imports from the custom menu in Google Sheets: OWOX → Schedule.
Absolutely. Use the Fields tab in the template to choose exactly which metrics and dimensions you want to pull into Google Sheets.



.png)
.png)


Finally, a tool that doesn't ask business users to learn a new dashboarding UI. Our marketing team already knows Sheets. OWOX just delivers the right data.
Joinable data marts concept was the thing that sold us. We can now use the semantic layer without building one.
Self-hosted the OSS version on Digital Ocean. Zero vendor lock-in. Contributed a Shopify connector back in week two.