
SEO & Marketing Educator at Ahrefs
Calculating SEO potential can be complex and time-consuming. But this is where my free SEO Potential Bot comes in. This simple tool automates the process of analyzing keywords, modeling ranking scenarios, and, in effect, calculating your/your client’s SEO traffic potential.
The bot is based on a simple method but gives you enough to:
You can find the bot here.
The bot works best with Ahrefs data since it relies on traffic potential and parent topics (more about them in a bit). But if you’re not an Ahrefs user, the bot can use regular keywords instead of parent topics and regular search volume instead of traffic potential. It will also handle copy-paste data from our Free Keywords Generator.
It produces a spreadsheet with traffic estimations you can download in CSV format. You also get visualizations of traffic potential (in the country you selected in Keywords Explorer) and global traffic in the form of stacked bar charts, which you can also download.
Keep in mind that the traffic is expressed as visits (not visitors) you could potentially get each month.
Here’s an example.
The higher the difficulty, the more time and effort you’ll need to rank. The “easy” bucket shows how much traffic you can likely get in the short term — a good target, especially for sites with low domain rating.
The bot is free to use but requires a ChatGPT subscription, as all community bots do. I’ve included the prompt at the end of the article that you can use instead of the bot (you’ll still need a ChatGPT subscription to use data analysis functionality) or with other LLMs, such as Gemini or Claude.
Here’s how to get the input data with Ahrefs’ Keywords Explorer.
You can also ask the bot to explain the method and adjust the settings.
Tip
Use your competitor’s keywords to estimate traffic you could get if you went after their market.
Use Ahrefs’ Site Explorer export your competitor’s keywords. You will need up to 10k keywords so adjust the filters to stay within the limit, such as minimum volume and max ranking to filter out less significant keywords. Skip branded keywords, too.
Plug them into Ahrefs’ Keywords Explorer to get parent topics and traffic potential data.
Finally, export the data and give it to the bot.
Traffic estimation divides search rankings into ranking buckets, applying specific click-through rate benchmarks to calculate potential traffic. CTRs reflect the reality that not everyone clicks on the first result. Higher-ranked keywords generally get more clicks, and CTRs help the bot account for this.
The bot simulates optimistic, realistic, and pessimistic ranking scenarios to show how different positions impact traffic.
The bot is designed for proprietary Ahrefs metrics:
It's important to note that the bot doesn't consider your website's current rankings. Instead, it focuses on the overall potential of your target keywords. However, you can still use it to estimate potential traffic from the keywords you’re already targeting.
Export your target keywords from Ahrefs’ Rank Tracker or another tool of your choice and paste them into Keywords Explorer. The tool will find relevant parent topics based on your target keywords. Export the results and pass them to the bot.
For example, this site could get the highest traffic lift by focusing on the easiest keywords.
Tip
SEO is a long-game strategy. Expect:
The more high-quality content you produce and the more high-quality links you build, the further you move from a pessimistic to an optimistic scenario.
As with pretty much all marketing strategies, there are basically two ways you can do SEO: DIY and outsourcing.
Do it yourself if you:
Check out our free beginner-friendly SEO courses in Ahrefs Academy, covering everything from keyword research to link building.
Outsource to an agency or a freelancer if you:
See how much you can expect to pay for SEO services.
I’m curious to hear your thoughts on the bot! Let me know on LinkedIn.
And here’s the prompt if you prefer to use it without the bot or with different LLMs (I tried it with Gemini and Claude).
Generate an SEO Potential Report
Create a file listing Parent Topics with columns for:
Difficulty: Categorized into four buckets: Easy (0-10), Medium (11-30), Hard (31-70), and Super Hard (71-100).
Traffic potential and Global traffic potential: Based on user-provided columns.
Estimated Traffic: Calculated for three ranking models:
Optimistic: 30% of keywords rank #1, 25% at #2, 20% at #3, 15% in positions 4-10, and 10% unranked.
Realistic: 20% at #1, 20% at #2, 30% at #3, 30% in positions 4-10, and 20% unranked.
Pessimistic: 10% at #1, 10% at #2, 20% at #3, 60% in positions 4-10, and 20% unranked.
CTR Assumptions:
Rank 1 = 30%, Rank 2 = 15%, Rank 3 = 10%, Ranks 4-10 = 5%, Unranked = 0%.
For each difficulty bucket, calculate:
Total keyword count.
Total traffic potential and Global traffic potential.
Estimated traffic for each ranking model.
Clean Data:
Remove any rows with an "Uncategorized" difficulty bucket.
Exclude rows where all values for traffic and potential traffic are zero.
Provide a summary row labeled “Sum”, aggregating totals for traffic potential, global traffic potential, and estimated traffic across all buckets.
Visualizations: Create two stacked bar charts:
1. Estimated Traffic Potential:
Each bar represents total Estimated Traffic Potential for a ranking model (Optimistic, Realistic, Pessimistic).
Stack the bar by difficulty bucket (Easy, Medium, Hard, Super Hard) to show the contribution of each bucket. The pessimistic scenario needs to be at the bottom.
2. Estimated Global Traffic Potential:
Each bar represents total Estimated Global Traffic Potential for a ranking model (Optimistic, Realistic, Pessimistic). The pessimistic scenario needs to be at the bottom.
Stack the bar by difficulty bucket (Easy, Medium, Hard, Super Hard) to show the contribution of each bucket.
Column Mapping:
If the exact column names cannot be found, ask the user to confirm which columns to use for Parent topic, Traffic potential, Global traffic potential, and Difficulty.

Join 284K marketers for weekly news, useful reads, industry updates, and the memes you didn’t know you needed.
Explore what’s inside the newsletter →