Bing Webmaster Tools has no button that sends your data to Looker Studio, Power BI or Google Sheets. What it has is an API, and once you know how that API answers, getting Bing's clicks, impressions and queries into any of those tools takes a few minutes. This guide covers every route, from a free Apps Script to partner connectors, and the quirks we found when we called the API ourselves in October 2026.
Quick answer: Google does not make a Bing Webmaster Tools connector for Looker Studio. Use a partner connector, or pull the data into Google Sheets with the free Apps Script below and use the Sheet as your Looker Studio source. Power BI can read the API directly through Get Data > Web.
Step 1: get a Bing Webmaster Tools API key
Microsoft offers two ways to access the API: OAuth 2.0, which it recommends for applications, and an API key, which is the simple option for your own reports. To create a key:
- Sign in to Bing Webmaster Tools and make sure the site is added and verified.
- Click Settings in the top right corner and open API Access.
- Accept the terms if you are using API access for the first time, then click Generate API Key.
Microsoft allows one API key per user, and the key works for every site verified in that account. Treat it like a password: if it leaks, delete it in Bing Webmaster Tools and generate a new one, then update every report that used the old key.
Step 2: know what the API returns
Every call is a simple web address with your site and key in it:
https://ssl.bing.com/webmaster/api.svc/json/GetQueryStats?siteUrl=https%3A%2F%2Fexample.com%2F&apikey=YOUR_KEY
These are the calls most reports need:
| Call | What you get |
|---|---|
GetQueryStats | Your top queries, one row per query per week: impressions, clicks, average impression position and average click position. |
GetPageStats | The same figures per page. |
GetRankAndTrafficStats | Total clicks and impressions for the site, one row per day. |
GetCrawlStats and GetCrawlIssues | How Bing crawls the site and the problems it found. |
GetUserSites | The sites your key can see. Useful to check the key works. |
Five quirks to plan for
We called these endpoints for daylytix.com on 9 October 2026. The answers had a few habits that every report has to handle:
- The rows sit under a "d" key. The response is
{"d": [ ... ]}, not a plain list. - Dates are not ordinary dates. They arrive as
/Date(1790899200000)/, the number of milliseconds since 1 January 1970 (UTC), and you have to convert them. - The page call reuses the query field. In
GetPageStatsthe page address comes back in a field calledQuery. Rename it in your report. - No clicks means -1. When a query has impressions but no clicks, the average click position is
-1. Treat it as empty, or your averages will be wrong. - There is no date range. These calls take no start or end date: you get the period Bing returns. For our site that was about 12 weeks of query rows and about 139 days of daily totals. To keep a longer history, store each import instead of overwriting it.
One more thing to know: when Bing added chat to its performance report in 2023, it said the Search Performance API now reports web and chat traffic combined, while keywords and URLs are reported for the web only.
Option 1: Looker Studio with a partner connector
Looker Studio has no Bing Webmaster Tools connector made by Google, so you need a partner connector. Two examples, checked on 9 October 2026:
- Data Bloo offers a free tier with 1 account per connector and up to 300 refreshes a day. Paid plans start at $99.99 a year for unlimited refreshes. You paste your Bing API key into Data Bloo and approve the connector in Looker Studio.
- Supermetrics and Improvado also connect Bing Webmaster Tools, as part of their paid data platforms.
A connector is the quickest route if you do not mind giving a third party your API key. If you would rather keep the key in your own Google account, use Option 2.
Option 2: Google Sheets with Apps Script (free)
This script pulls GetQueryStats into a sheet called "Bing queries". Looker Studio can then read the sheet with its own Google Sheets connector.
- Create a Google Sheet and open Extensions > Apps Script.
- In Project Settings, add a script property named
BING_API_KEYwith your key, so it does not sit in the code. - Paste the function below, change the site address, and run it once to grant access.
- Under Triggers, add a time-driven trigger to run it daily.
function importBingQueryStats() {
var key = PropertiesService.getScriptProperties().getProperty('BING_API_KEY');
var site = 'https://example.com/';
var url = 'https://ssl.bing.com/webmaster/api.svc/json/GetQueryStats'
+ '?siteUrl=' + encodeURIComponent(site) + '&apikey=' + key;
var rows = JSON.parse(UrlFetchApp.fetch(url).getContentText()).d;
var out = [['Date', 'Query', 'Impressions', 'Clicks', 'Avg impression position', 'Avg click position']];
rows.forEach(function (r) {
var ms = Number(r.Date.match(/\d+/)[0]); // "/Date(1790899200000)/" -> milliseconds
out.push([new Date(ms), r.Query, r.Impressions, r.Clicks, r.AvgImpressionPosition,
r.AvgClickPosition < 0 ? '' : r.AvgClickPosition]); // -1 = no clicks
});
var book = SpreadsheetApp.getActive();
var sheet = book.getSheetByName('Bing queries') || book.insertSheet('Bing queries');
sheet.clearContents();
sheet.getRange(1, 1, out.length, out[0].length).setValues(out);
}
For pages, change the call to GetPageStats and the column title from Query to Page. For daily totals, use GetRankAndTrafficStats with Date, Clicks and Impressions. The script replaces the sheet on every run, which is fine because Bing returns its whole window each time. If you want history beyond that window, append only the dates you do not have yet.
Option 3: Power BI
Power BI reads the API directly with its Web connector. In Power BI Desktop, choose Get Data > Web, select Basic, paste the API address with your site and key, and choose Anonymous when it asks how to sign in (the key in the address does the authentication). To get a clean table with real dates, replace the query in the Advanced Editor with:
let
Source = Json.Document(Web.Contents("https://ssl.bing.com/webmaster/api.svc/json/GetQueryStats?siteUrl=https%3A%2F%2Fexample.com%2F&apikey=YOUR_KEY")),
Rows = Table.FromRecords(Source[d]),
Dated = Table.AddColumn(Rows, "Day", each #datetime(1970, 1, 1, 0, 0, 0)
+ #duration(0, 0, 0, Number.FromText(Text.BetweenDelimiters([Date], "(", ")")) / 1000))
in
Dated
The key becomes part of the query, so anyone who opens the .pbix file can see it. Keep the file private, or load the data from the Google Sheet in Option 2 instead.
Option 4: BigQuery
BigQuery has no Bing connector either. The simplest route is the sheet from Option 2: BigQuery can query a Google Sheet as an external table, so the daily Apps Script run keeps BigQuery up to date without extra code. For larger volumes, export the rows to CSV and load them into a regular table.
Option 5: Claude, Cursor and other AI assistants
Several community projects wrap the Bing Webmaster Tools API as an MCP server, so assistants like Claude Code or Cursor can read your Bing data and answer questions about it. Two examples are mcp-server-bwt and mcp-server-bing-webmaster. They are third-party projects, not Microsoft's: read the code before you install one, and remember that it runs with your API key.
Option 6: Bing data inside your audit
If what you want is Bing's view of a site next to everything else, you may not need a dashboard at all. With a Bing API key in Daylytix, every audit of a site verified in that Bing account gets a Bing tab: crawl totals for the last 30 days, pages in Bing's index, pages blocked by robots.txt, crawl issues per URL, your top 30 pages by impressions with clicks, and Bing AI search performance where Bing provides it. Keyword statistics stay in Bing Webmaster Tools. The setup takes a minute and is described in Connecting the Bing Webmaster Tools API.
Which option should you use?
| You want | Use |
|---|---|
| A client dashboard in Looker Studio, set up in minutes | A partner connector (Option 1) |
| Looker Studio without sharing your key, for free | Google Sheets with Apps Script (Option 2) |
| Bing data in an existing Power BI report | The Web connector (Option 3) |
| Bing next to other data in a warehouse | Sheets as an external table, or CSV loads (Option 4) |
| To ask questions about your Bing data in plain language | An MCP server (Option 5) |
| Bing's crawl and index view in a regular site audit | Daylytix (Option 6) |
Frequently asked questions
Is there an official Bing Webmaster Tools connector for Looker Studio?
No. Google does not make one. Partner connectors such as Data Bloo fill the gap, or you can load the data into Google Sheets with Apps Script and connect the sheet.
Where do I find my Bing Webmaster Tools API key?
In Bing Webmaster Tools, click Settings in the top right corner and open API Access, then click Generate API Key. One key per user works for all the sites verified in that account.
Can I choose a date range in the Bing Webmaster Tools API?
Not in the query, page and traffic calls: they take only the site and the key and return the period Bing provides. Store each import if you want a longer history.
Does the API include Copilot and chat traffic?
Bing said in 2023 that the Search Performance API reports web and chat traffic combined, while keywords and URLs are reported for the web only.
Can I connect Bing Webmaster Tools to Claude?
Yes, through community MCP servers that wrap the Bing Webmaster Tools API. They are not made by Microsoft, so review the code and keep your API key private.