The Scenario
A local SEO consultant has taken on a plumbing client with locations in 15 US cities. The client wants to know how they rank for "emergency plumber" and four other key terms in each market. That's 75 unique keyword-city combinations.
You have the keywords in column A and the cities in column B. You need rank position, page title, and URL in columns C through E for each combination.
The bad version:
- Go to Zenserp, enter "emergency plumber" with location set to Denver, copy the top result, paste it into row 2.
- Change the location to Seattle, run again, paste into row 3.
- Repeat through all 75 rows, keeping track of which city-keyword pair you're on.
Seventy-five manual API calls. And this client wants the report monthly.
The constraint here isn't time — it's attention. Seventy-five sequential lookups means seventy-five chances to paste a result into the wrong row.
The Easy Way: One Prompt in SheetXAI
SheetXAI is an AI agent inside your Excel workbook with a built-in Zenserp integration. It reads the keyword and location from each row and runs the geo-targeted search for you.
Run geo-targeted Google searches using Zenserp for all keyword and location pairs in this Excel sheet — populate rank position, title, and URL for the top 3 results in each row
What You Get
- Column C: rank position for result 1
- Column D: page title for result 1
- Column E: URL for result 1
- Columns F and G: same fields for results 2 and 3
- Rows where Zenserp returns no localized results get a note in column C
What If the Data Is Not Quite Ready
City names in column B are inconsistent
Some rows say "Denver, CO," others say "Denver," others say "denver colorado." Zenserp's location parameter is picky.
Standardize all location values in column B to city and two-letter state format (e.g., "Denver, CO"), then run a Zenserp geo-targeted search for each keyword in column A using the standardized location and write rank position, title, and URL into columns C through E.
You want results only from the top 3 map pack, not organic
The client cares specifically about the Google local 3-pack for each market, not the standard organic results.
For each row in this workbook, run a Zenserp Google search for the keyword in column A with location from column B, extract only the local pack results, and write business name, address, and position into columns C through E.
Some keywords need device-specific results
The client suspects their rankings differ significantly between mobile and desktop searches in smaller cities.
For each keyword in column A and city in column B, run two Zenserp searches — one for desktop and one for mobile — and write the top 3 organic positions for each device type into separate column groups: desktop rank in column C, mobile rank in column D.
Full pipeline: search, compare, flag gaps
You want fresh rank data, a delta against the previous month (already in column F), and a flag on any city-keyword pair where the client dropped out of the top 10.
Run a Zenserp geo-targeted Google search for each keyword in column A and city in column B and write the top 3 rank positions into column C. Compare each new position to last month's rank in column F and write the delta in column G. Mark any row where the new rank is greater than 10 with "outside top 10" in column H.
Ask for the clean data, the comparison, and the flag in one shot rather than building the logic separately after the pull.
Try It
Get the 7-day free trial of SheetXAI and open your local SEO rank tracker workbook, then ask it to run geo-targeted Zenserp lookups for every keyword-city pair. For single-location keyword lists, the bulk SERP results spoke covers that workflow.
