Connect Google Search Console to Power BI
Power BI has no Search Console connector of its own. Windsor.ai sends Search Console data to Power BI: clicks, impressions, CTR and position by date, query, page, country and device.
The same Windsor.ai account connects GA4, Google Ads and 350+ other sources, so one Power BI model can hold organic search next to paid and site traffic.
Free forever plan for one data source.
What you can build with Search Console in Power BI
Load Search Console as a few narrow tables rather than one wide one, and join them with the rest of your marketing data in the same model.
Daily trends next to other channels
Load date-level clicks and impressions, and put them next to GA4 sessions or Google Ads spend from the same Windsor.ai account.
Query and page tables
Pull query or page with clicks, impressions, CTR and position as separate tables, so each one loads quickly and stays easy to filter.
Device and country splits
Split clicks by device or country. On windsor.ai in September 2026, desktop brought 80% of Search Console clicks and mobile 19%.
Ways to get Search Console into Power BI
Microsoft’s list of Power BI connectors has Google Analytics, Google BigQuery and Google Sheets, but no Search Console. These are the routes that work:
- CSV export. The Performance report exports 1,000 rows, so long-tail queries are missing.
- The Search Console API, by hand. Possible with a custom Power Query, but Google’s sign-in token expires after an hour, which breaks scheduled refreshes.
- Bulk export to BigQuery, read with Power BI’s BigQuery connector. Search Console exports every day from the day you set it up, with no older data, and BigQuery storage and queries cost money above the free tier.
- Windsor.ai. Pick the Search Console fields in Windsor.ai and load them through a query URL, including days from before you connected it. How far back depends on your plan.
The report on this page loads windsor.ai’s own Search Console data through the last route. Every field you can load, from query and page to search appearance and page path levels, is in the Search Console field reference.
How to connect Google Search Console to Power BI with Windsor.ai
You need:
- Power BI Desktop (free from Microsoft).
- A Windsor.ai account (free forever plan, no credit card).
- A Google account with access to the Search Console property.
Select your data source
Choose Google Search Console, sign in with a Google account that has access to the property and select it. Use the domain property to get every subdomain in one query.
Pick the fields and copy the Power BI URL
Select the fields, for example date, device, clicks, impressions, CTR and position, and a date range. Choose the Power BI Desktop (Web) destination and click Copy next to the URL.
Load the data with a blank query
In Power BI Desktop, click Get data → Blank query → Advanced editor, paste the Power Query formula from this page with your URL in it, and click Done. Choose Anonymous if Power BI asks how to connect.
Build and refresh your report
Click Close & Apply and build the visuals. Refresh pulls the latest data; Search Console data is usually 2 to 3 days behind.
The Power Query formula
Current versions of Power BI Desktop read Windsor.ai’s query URL as a web page: Get data → Web shows the data as “Displayed text” and “HTML code” instead of a table. A blank query with this formula turns it into a table:
let
Source = Json.Document(Web.Contents("PASTE_YOUR_WINDSOR_URL_HERE")),
Data = Table.FromRecords(Source[data]),
Typed = Table.TransformColumnTypes(Data, {{"date", type date}, {"clicks", Int64.Type}, {"impressions", Int64.Type}, {"ctr", type number}, {"position", type number}})
in
Typed
In Get data → Blank query → Advanced editor, paste the formula, put your URL between the quotes, click Done, and choose Anonymous when Power BI asks how to connect. The API key is already in the URL, so treat the URL and the .pbix file like a password.
Keep each query narrow. Date and device for 28 days loaded 78 rows in under a second in our test; date, query, page and device together for the same 28 days timed out. Load trends, queries and pages as separate queries.
Power BI Desktop also lists Windsor under Get data. In our test on 2 October 2026 a saved Windsor query did not load from it (“We cannot convert a value of type Function to type Table”), so the steps on this page use the query URL.
FAQs
Why does Power BI show the Windsor URL as text instead of a table?
Power BI Desktop treats the response as a web page and offers “Displayed text” and “HTML code”. Load the same URL with a blank query and the Power Query formula on this page, which reads the data as a table.
Why did my Search Console data time out in Power BI?
The query was too wide. In our test, date, query, page and device for 28 days timed out, while date and device for the same period loaded in under a second. Load trends, queries and pages as separate, narrower queries, or shorten the date range.
Can I refresh the report automatically?
Yes, after you publish it to the Power BI service. Scheduled refresh runs up to 8 times a day on Power BI Pro and up to 48 times a day on Premium or Fabric capacity. In Power BI Desktop, click Refresh.
Is it safe to put the API key in the URL?
Treat the URL and the Power BI file like a password: anyone who has them can read the data. If the URL is shared by mistake, generate a new API key in Windsor.ai and update the query.
How much does it cost?
Power BI Desktop is free; sharing reports in the Power BI service needs a Pro licence. Windsor.ai’s free forever plan covers one data source, with no credit card. Search Console with GA4 or ad data needs a paid plan from $19 a month for three sources or $99 a month for seven. See pricing.
Get your Search Console data into Power BI. Try Windsor.ai free

