Share of Voice Calculator (CTR)
Use cases
Applies CTR curves to positions 1-10: Estimated Traffic = CTR × Search Volume.
Aggregates by domain and calculates SOV = Domain Traffic / Total Traffic × 100.
Four CTR presets: Sistrix (2020), Advanced Web Ranking (Desktop), Backlinko (2023), Conservative.
Custom CTR values configurable (0.0-1.0).
Accepts a CSV of pre-scraped ranking data, or fetches live top 10 SERP results per keyword from the DataForSEO Google organic endpoint with an estimated cost shown before fetching.
Platform
Browser-based (no installation required)
Input
Ranking keywords CSV, or keywords with volumes plus DataForSEO login and password for live fetching
Optional category column for vertical analysis
Flexible column naming supported
Output
Excel: aggregated SOV results + raw data. Dashboard: domains analysed, total traffic, keywords tracked, leader SOV %. Bar charts.
Features
- CTR curve presets: Sistrix, AWR, Backlinko, Conservative
- Custom CTR values per position (0.0-1.0)
- CSV upload or live SERP fetching via DataForSEO (11 locations, desktop or mobile)
- Estimated traffic calculation: CTR × Volume
- SOV formula: Domain Traffic / Total × 100
- Optional category-based grouping
- Top N domains display slider
How to use
- 1 Upload ranking data CSV, or supply keywords and volumes for a live DataForSEO fetch
- 2 Map columns: keyword, volume, position, domain
- 3 Select CTR curve preset or customise values
- 4 Optionally select category column
- 5 Calculate SOV
- 6 Download two-sheet Excel report
Frequently asked questions
- What shape does my CSV need to be in?
- One row per keyword-domain-position combination, ideally the full top 10 for every keyword, as you would get from a SERP API export or rank tracker competitor report. If you upload only your own domain's rankings, your SOV will read 100 percent because the denominator is the total estimated traffic of the domains in the file. Columns are auto-detected from common names (keyword/query, volume/sv, position/rank, domain/url/site) with a manual mapping expander as backup.
- What happens to rankings below position 10?
- They are dropped entirely: the tool filters to positions 1 to 10 because the CTR curves only define values for those positions. A domain ranking 11 or worse for a keyword contributes zero estimated traffic for it.
- My positions are averages like 2.5. How are they handled?
- Positions are converted to numeric and then truncated to integers, so 2.5 becomes position 2 and gets position 2's CTR. Rows where the position cannot be parsed as a number are removed before calculation.
- Does the Top N setting change the SOV percentages?
- No, unlike a display-limited calculation, the denominator here is the estimated traffic of all domains in the file, computed before the Top N cut. Top N only limits how many rows are displayed and exported, which is why the visible rows can sum to less than 100 percent. With category grouping enabled, SOV is instead calculated within each category.
- Can it fetch rankings for me instead of a CSV?
- Yes. The live fetch tab takes keywords with their search volumes and pulls the top 10 organic results for each from the DataForSEO Google organic endpoint, using the location (11 options) and device (desktop or mobile) you set in the sidebar. It requires a DataForSEO login and password and shows an estimated cost of $0.002 per keyword before fetching; the CSV upload path uses no API at all.
- How different are the CTR presets?
- Mostly at the top positions: position 1 ranges from 20 percent (Conservative) to 31 percent (Advanced Web Ranking Desktop), with Sistrix at 28.48 percent and Backlinko at 27.5 percent. All four curves sum to well under 100 percent across positions 1 to 10, so estimated traffic is deliberately conservative relative to total search volume. You can also override any position's CTR manually between 0 and 1.
Want me to run this for you?
I run this tool as a managed service, or build something custom around your data. You get the insights without touching the code.
Related Tools
Find pages losing traffic over time by comparing peak vs current performance.
Scrape Google Search Status page for algorithm update history.
Parse ValueSERP batch JSON exports and report your domain's organic appearances.
Forecast search trends using NeuralProphet ML.
Generate BCG matrix visualisations from GA landing page reports with cascading folder analysis.
Calculate CPC, total spend, or clicks from any two values.
Need something built for your business?
This tool started as bespoke client work. I build custom scripts, data pipelines, and full apps for SEO and product data problems that off-the-shelf tools don't solve.
Book a Call