You're paying $99/month for Ahrefs. Another $79 for SEMrush. Maybe $49 for a dedicated rank tracker on top. And all you really need is one number: where does your page rank for a given keyword?
What if you could get that answer with a single spreadsheet formula?
With Unlimited Sheets, you can. One function — =getKeywordPosition("your keyword", "yoursite.com") — and you have live rank data inside the tool you already use every day.
No dashboards to learn. No exports to wrangle. No extra subscriptions to justify.
TL;DR: Install Unlimited Sheets, type one formula, and get real-time keyword rankings directly in Google Sheets. Build tracking dashboards, compare competitors, and monitor positions across countries — all from a spreadsheet.
Why Track Keywords in Google Sheets?
Most SEO tools lock your data behind their interface. You can export CSVs, sure — but then you're back in a spreadsheet anyway, reformatting columns and building pivot tables.
Why not start where you'll end up?
- Cut your tool costs — Replace $100+/month rank trackers with a single Google Sheets add-on
- Own your data — No vendor lock-in, no export limits, no "upgrade to download"
- Share with anyone — Clients and teammates already know Google Sheets. No training needed
- Build custom reports — Combine ranking data with traffic, revenue, or any other metric in the same sheet
- Keep unlimited history — Every snapshot stays in your spreadsheet forever
Real Example: Agency Rank Tracking
Here's what an agency tracking keywords across multiple clients looks like:
| Client | Keyword | Domain | Position | Change | Country |
|---|---|---|---|---|---|
| Acme Co | best crm software | acme.com | 4 | +3 | US |
| Acme Co | crm comparison | acme.com | 12 | -2 | US |
| Beta Inc | project management | beta.io | 7 | +1 | UK |
| Beta Inc | team collaboration | beta.io | 15 | 0 | UK |
| Gamma Ltd | email marketing tool | gamma.com | 2 | +5 | US |
Each row uses one formula. The entire dashboard updates when you refresh.
Getting Started: Your First Rank Check in 2 Minutes
Step 1: Install Unlimited Sheets
Head to the Google Workspace Marketplace and click Install. It takes 30 seconds and works with any Google account.
Step 2: Set Up Your Keyword List
Create a new Google Sheet with this structure:
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Keyword | Domain | Position | Last Checked |
| 2 | best seo tools | yoursite.com | ||
| 3 | keyword research guide | yoursite.com | ||
| 4 | seo audit checklist | yoursite.com |
Step 3: Add the Formula
In cell C2, type:
=getKeywordPosition(A2, B2)
The function queries Google's search results and returns your exact ranking position. Drag the formula down for every keyword.
Step 4: Add Timestamps
In cell D2, add:
=IF(C2<>"", NOW(), "")
This records when each position was last checked, so you always know how fresh your data is.
Understanding Your Results
The getKeywordPosition function returns a number:
| Position | What It Means | Action |
|---|---|---|
| 1-3 | Top of page 1 | Protect your position — keep content fresh |
| 4-10 | Page 1 but below the fold | Optimize title tags, add internal links |
| 11-20 | Page 2, close to visibility | Your biggest opportunity — small tweaks can push you up |
| 21-50 | Pages 3-5 | Review content quality and backlink profile |
| 51-100 | Deep results | Consider if this keyword is worth targeting |
| 0 | Not found in top 100 | Re-evaluate targeting or create new content |
Pro tip: Keywords ranking 11-20 are your best optimization opportunities. They're already close to page 1 — a few internal links or a content refresh can push them over the line.
Build a Complete Tracking Dashboard
A one-time rank check is useful. A tracking dashboard that shows movement over time is powerful.
Weekly Snapshot System
Here's a proven approach that takes 2 minutes each week:
- "Current Rankings" sheet — Contains live formulas that update on refresh
- "Archive - Jan 20" sheet — Copy-paste values (Ctrl+Shift+V) from Current Rankings each week
- "Dashboard" sheet — Uses VLOOKUP to compare current vs. previous positions
Calculating Position Changes
Add a "Change" column that compares this week vs. last week:
=C2-VLOOKUP(A2, 'Archive - Jan 13'!A:C, 3, FALSE)
The result tells you exactly what happened:
- Positive number (+3) — You moved up 3 positions
- Negative number (-2) — You dropped 2 positions
- Zero (0) — No change
Visual Ranking Indicators
Use conditional formatting to make your dashboard scannable at a glance:
| Position Range | Color | Meaning |
|---|---|---|
| 1-3 | Green | Top performers |
| 4-10 | Light green | Page 1 |
| 11-20 | Yellow | Opportunity zone |
| 21-50 | Orange | Needs attention |
| 50+ | Red | Review strategy |
Set this up once via Format > Conditional Formatting, and every data point is automatically color-coded.
Advanced Techniques
Track Rankings in Multiple Countries
Running campaigns in different markets? Add a country parameter:
=getKeywordPosition(A2, B2, "uk")
=getKeywordPosition(A2, B2, "de")
=getKeywordPosition(A2, B2, "fr")
Build a multi-country dashboard by adding columns for each target market.
Monitor Competitor Rankings
Track where your competitors rank for the same keywords — use their domain instead of yours:
| Keyword | Your Position | Competitor 1 | Competitor 2 |
|---|---|---|---|
| best crm | 4 | 2 | 8 |
| crm software | 7 | 1 | 12 |
| crm comparison | 3 | 5 | 15 |
This gives you a competitive landscape view without paying for enterprise-tier SEO tools.
Combine With Search Volume Data
Pair your ranking data with search volume to prioritize efforts:
=getSearchVolume(A2)
Now you can estimate traffic by multiplying search volume by expected click-through rate for your position. Position 1 gets roughly 28% of clicks, position 2 gets about 15%, and it drops from there.
Who Is This For?
SEO Agencies
- Client reporting — Build branded dashboards per client, all in Google Sheets they can access anytime
- Scalable tracking — Add new clients and keywords in seconds
- Cost reduction — Stop paying per-seat licenses for rank tracking software
In-House SEO Teams
- Executive dashboards — Connect ranking data to revenue metrics in the same spreadsheet
- Cross-team visibility — Content, product, and marketing teams can all see the data
- Custom KPIs — Build the exact reports your leadership wants
Content Marketers
- Content ROI tracking — See which articles actually rank and drive traffic
- Update prioritization — Identify content that's slipping and needs a refresh
- Topic gap analysis — Find keywords where you don't rank but competitors do
Freelance SEO Consultants
- Low overhead — No expensive tools eating into your margins
- Professional deliverables — Share polished Google Sheets dashboards with clients
- Quick audits — Check a prospect's rankings in minutes during a sales call
5 Best Practices for Rank Tracking
- Check daily, analyze weekly. Rankings fluctuate day-to-day. Look at trends over weeks, not individual days.
- Focus on keywords that drive revenue. Track 20 high-value keywords, not 2,000 vanity metrics. Quality over quantity.
- Always track branded terms. If your brand name drops in rankings, it could signal a reputation or technical SEO problem.
- Monitor your top 3 competitors. Know when a competitor overtakes you before your traffic drops.
- Archive your data monthly. Create monthly snapshots so you can compare quarter-over-quarter and year-over-year trends.
Frequently Asked Questions
How often does getKeywordPosition update?
Each time you run the formula or refresh the sheet, it fetches live results from Google. We recommend checking once daily — rankings rarely change hour-to-hour.
Is the data accurate compared to tools like Ahrefs or SEMrush?
Yes. The function checks actual Google search results for your keyword and domain. The data is as fresh as a manual Google search — often fresher than third-party tools that update on a delay.
How many keywords can I track?
Your plan determines your monthly SERP credit allowance. Pro plans include 1,000 credits and Business plans include 10,000. Each formula call uses one credit.
Can I track rankings for YouTube, Bing, or other search engines?
Currently, getKeywordPosition tracks Google Search rankings. Google handles over 90% of global search traffic, so this covers most use cases.
Does this work on mobile rankings?
The function returns desktop search rankings. Google's mobile and desktop results are very similar for most queries since the mobile-first indexing update.
Can I set up automatic daily tracking?
Yes. Create an Apps Script trigger in Google Sheets (Extensions > Apps Script) that refreshes your formulas on a schedule. This automates daily snapshots without manual work.
Sources and Further Reading
- Google Search Central: How Search Works — Google's official documentation on search ranking
- Backlinko: Google CTR Statistics — Click-through rate data by position for estimating traffic
- Google Workspace Marketplace: Unlimited Sheets — Install the add-on
- Ahrefs: Keyword Rank Tracking Guide — General rank tracking methodology
Start Tracking Your Rankings Today
You don't need another $100/month tool. You need one formula in the spreadsheet you already have open.
- Install Unlimited Sheets (free, 30 seconds)
- Type
=getKeywordPosition("your keyword", "yoursite.com") - Build your tracking dashboard
Every day you're not tracking rankings, you're flying blind on your SEO strategy.