The Problem With Getting Workbook Data In and Out of GTmetrix
You've got an Excel workbook full of URLs — client sites, microsites, product pages, API endpoints. You need GTmetrix performance data sitting next to them: grades, LCP, TBT, fully loaded times. Or you need the last six months of historical reports imported so you can chart performance drift across releases.
GTmetrix is very good at measuring website speed. But exporting its results into a spreadsheet is not a native workflow. The default path is: open the GTmetrix dashboard, run a test, copy the score, switch to Excel, paste, go back, next URL — until you've done this for every row in your list.
Below are the four ways teams handle this. Only the last one doesn't require a second afternoon.
Method 1: Manual Copy-Paste
For Excel users, the typical starting point is a CSV export — if GTmetrix offers one for the report in question — or else plain manual copy-paste from the dashboard. You run the test, download or copy the results, open the workbook, paste them into the right columns.
One test, one page, this is fine. The problem arrives at test number eight.
You're probably checking a list of pages, every sprint, every client review cycle, every time a new build goes out. The CSV-paste cycle gets old fast — especially when GTmetrix's export format doesn't quite match your workbook's column layout and you have to reformat every time before the numbers land in the right place.
Method 2: Power Automate
Power Automate has HTTP connector support and can call the GTmetrix API on a schedule or in response to a workbook change. You could wire up a trigger when a new URL appears in column A, kick off a GTmetrix test, poll for completion, and write the result back.
Quick check before going further — do you know what an HTTP connector is in Power Automate? A polling loop? A JSON response parser? If those feel foreign, this is not your method. Skip to Method 3 or 4.
If you're still here: yes, the flow works at the row level. You authenticate your GTmetrix API key, build the POST call to start the test, write a loop to check the test status, parse the result JSON, and map the fields back to the right columns.
But row-level triggers are not bulk test runners.
Testing 30 URLs means 30 separate flow runs, 30 polling cycles, and a flow history that becomes nearly impossible to read when three of them return a 500 and the others silently complete out of order.
You probably just need the GTmetrix scores written into your workbook. You probably have no idea how to build a polling loop in Power Automate — and there's no reason you should. So it becomes something you hand off to IT or a developer, and now you're waiting for a reply that might come before Thursday, might not.
And once you need to average scores across all URLs, flag any page that dropped a letter grade, or join against a second sheet with client metadata — you've exceeded what a row-level flow can express.
Method 3: The Previous Generation — Connector Add-Ons
Until recently, the closest thing to a repeatable solution was a category of add-ons that let you save field mappings, authenticate to an external service, and pull data on demand. You tagged your columns, configured the connection, and ran the import.
That was genuinely better than copy-paste. Your column layout was stable. The config was reusable. You didn't have to reformat a CSV every time.
But you were still in charge of every field mapping, every column assignment, every edge case when a test timed out or returned a partial result. The add-on moved the data; everything else was still your responsibility. And every time your worksheet changed structure, the config broke until someone went back in to repair it.
This is the previous generation. Useful, but high-maintenance.
The Easy Way: Using SheetXAI in Excel
There's a different approach entirely. SheetXAI is an AI agent that lives inside your Excel workbook. It reads your data, understands what you're working with, and through its built-in GTmetrix integration it can trigger tests, wait for results, and write performance scores back — from a single prompt in the sidebar.
Example 1: Bulk-test a URL list and populate the performance columns
Run a GTmetrix test for each URL in column A of my "Client Sites" worksheet and fill columns B, C, and D with the GTmetrix Grade, performance score, and LCP once each test completes.
SheetXAI queues every test, waits for completion, and writes the results back row by row — no dashboard switching, no CSV reformatting.
Example 2: Export all historical reports for a monitored page
Pull all historical GTmetrix reports for page ID pg_abc123 and fill my "Performance History" worksheet with date in column A, performance score in column B, LCP in column C, and TBT in column D.
The pattern: instead of exporting and pasting report by report, you describe where you want the data and ask. SheetXAI handles the retrieval and the column mapping.
Try It
Get the 7-day free trial of SheetXAI and open any workbook with a list of URLs or GTmetrix page IDs, then ask it to run the tests and fill your performance columns. The GTmetrix integration is included in every SheetXAI plan.
More GTmetrix + Excel guides
Bulk Run GTmetrix Speed Tests From a Google Sheet
Run GTmetrix performance tests on every URL in your sheet and pull back grades, scores, and Core Web Vitals — without opening the GTmetrix dashboard once.
Export GTmetrix Historical Test Reports Into a Google Sheet
Pull every historical GTmetrix report for a monitored page into a sheet to chart performance trends across time.
Pull All GTmetrix Monitored Pages Into a Google Sheet Dashboard
Fetch every page you're tracking in GTmetrix, with its latest grade and score, into one sheet for a weekly performance snapshot.
Compare GTmetrix Scores Across Locations in a Google Sheet
Run GTmetrix tests from multiple locations for each URL and write the results side by side into a single sheet for geographic performance comparison.
Retest All GTmetrix Monitored Pages From a Google Sheet After a Deploy
Trigger fresh GTmetrix tests for every monitored page ID in your sheet after a release, and write the new grades and scores back automatically.
