The problem: most dental content is written for nobody
A practice decides it should blog more. Somebody writes four posts about the importance of flossing. The posts go live. Nothing happens. Six months later the practice concludes that content marketing does not work for dentists.
Content marketing works fine for dentists. What does not work is writing without knowing what anyone is searching for.
Those first two numbers explain each other. Almost all pages get no traffic, and almost all keywords have tiny search volume. The pages that fail are usually the ones written about a topic nobody searches for, in language nobody uses, competing against pages that answered the question better.
Keyword research is the step that prevents this. It is not glamorous and it is not creative. It is a day of work that determines whether the next six months of content produces patients or produces nothing.
What a keyword strategy actually is
A keyword strategy is not a list of keywords. A list of keywords is what you get halfway through, and on its own it is useless. The strategy is the document that answers four questions.
When those four questions have written answers, a writer can be briefed, a developer can build, and three months later you can look at what happened and say whether it worked. Without them, everyone is guessing, expensively.
The process, in order
Seven steps. They have to happen in this order, because each one depends on the last. Skipping to step five, which is where most practices start, produces a map of pages nobody searches for.
The rest of this guide walks each step. Semrush is used for the demonstration because it is the industry standard and it is genuinely the best tool for the job. There is a full section on the free alternatives afterwards, because a $139 a month subscription is not a reasonable ask for every practice, and the free route gets you most of the way.
Step one: build the seed list
Before any tool, a sheet of paper. Write down three lists.
Every service you actually provide
Not every service you could theoretically provide. Every service you want more of. Implants, veneers, Invisalign, crowns, whitening, emergency care, sedation, periodontal treatment. If a service does not appear on this list, it does not get a page.
Every question a patient asks in the chair
This list is more valuable than the first one and almost nobody writes it down. Ask your hygienists. Ask your front desk what people call to ask before they book. How long does it take. Does it hurt. What does it cost. Will my insurance cover it. How long will it last. Can I eat afterwards.
Those questions are search queries, verbatim. Patients type them exactly the way they say them.
Every geography you genuinely serve
Your city. The neighbourhoods around you. The towns people actually drive from. Be honest here, because this list becomes location pages later and inventing geographies you do not serve creates a specific problem covered further down.
Step two: expand the seeds
One seed becomes two hundred terms. This is what the tools are for.
| Keyword | Intent | Volume | KD % | CPC |
|---|---|---|---|---|
| dental implants cost | Commercial | 74,000 | 71 | $9.14 |
| how long do dental implants last | Informational | 14,800 | 38 | $3.22 |
| all on 4 dental implants | Commercial | 12,100 | 66 | $11.40 |
| dental implants [your city] | Commercial | 50 | 8 | $0.00 |
| full mouth dental implants [your city] | Informational | 10 | 0 | $0.00 |
The four match types
| Match type | What it returns | Use it when |
|---|---|---|
| Broad | Anything containing your seed in any order or variation | First pass. You want volume of ideas, not precision |
| Phrase | Your seed in exact form, no plurals or verb variations | Narrowing a huge list down to one service line |
| Exact | Only the seed in the exact same form and order | Checking whether one specific term is worth a page |
| Related | Semantically related terms that may not contain the seed | Finding the questions you did not know to ask |
Practical sequence: run broad match with no filters, sort by volume, and export everything. Then start narrowing. If you filter first you will only ever find the terms you already thought of, which defeats the purpose.
The walkthrough, click by click
- Open the Keyword Magic Tool and set the database to your country. Get this wrong and every volume figure in your export is for the wrong market.
- Enter your first seed. Use the service name on its own, with no city attached. You add geography later, not now.
- Leave it on Broad match and apply no filters at all. Look at the total number of keywords it found. For a dental service this is usually somewhere between two thousand and thirty thousand.
- Now apply one filter: Search Intent, and untick Navigational. Navigational searches are people looking for a specific brand, and you cannot win those unless the brand is yours.
- Apply a second filter: KD, maximum 40. This is a blunt instrument and you will revisit it, but on a first pass it removes terms a local practice has no realistic chance of ranking for this year.
- Click the Questions button and export that list separately. Questions are your blog content and they deserve their own sheet.
- Go back, clear the Questions filter, and add your city name in the Include keywords field. Export that separately too. This is your local sheet.
- Repeat for every seed on your list. You will end up with three sheets per service: broad, questions, and local.
That is roughly ninety minutes for a practice with six services, and it is the single most productive ninety minutes in the whole process. Everything afterwards is filtering and judgement applied to what these exports contain.
The location problem, and how to work around it
Here is a thing the Keyword Magic Tool does not do well, and you should know it before you spend a day fighting the interface. The tool selects a database at country level. There is no city picker.
The workaround Semrush themselves recommend is to select your country and then use the Include keywords filter with your city and neighbourhood names, running separate passes for each. It is clumsy but it works.
The Keyword Overview tool is better for this. It reports local metrics at city and region level, which the Magic Tool does not.
Step three: filter, and filter by intent first
You now have a spreadsheet with several hundred rows. Most of them are useless to you. The filtering step is where research becomes strategy.
The instinct is to filter by volume, keeping the big numbers and discarding the small ones. For a local dental practice this instinct is exactly backwards, and understanding why is the single most useful idea in this guide.
Why a keyword with fifty searches beats one with fifty thousand
Here is a real cluster from a real dental practice. The city name has been removed.
| Keyword | Intent | Volume | KD % |
|---|---|---|---|
| dental implants [city] | Commercial | 50 | 8 |
| dental implants [city] [state] | Commercial | 20 | 2 |
| full mouth dental implants [city] | Informational, Commercial | 10 | 0 |
| affordable dental implants in [city] | Informational | 10 | 0 |
| all on 4 dental implants [city] | Informational | 10 | 0 |
| best dental implants [city] | Commercial | 10 | 0 |
| [city] dental implant restoration | Informational, Commercial | 10 | 0 |
| dental implant [city] | Commercial | 10 | 0 |
One hundred and thirty combined monthly searches across eight terms. Difficulty near zero across all of them. A generalist SEO consultant would look at this and tell you it is not worth a page.
Now think about who types "all on 4 dental implants [your city]" into Google. It is a person who has already researched full arch implants, already decided they want them, and is now looking for somebody nearby to do it. That is not a browser. That is a case worth five figures, and there are ten of them a month.
Compare that to "dental implants cost" at 74,000 monthly searches nationally. Those searchers are in fifty states. Maybe three of them live near you. And you would be competing against national content mills with hundreds of backlinks.
The volume data problem, and what to trust instead
There is a further wrinkle. Search volume data for small geographies is unreliable, and Google says so directly.
Google states that volume statistics are rounded, that historical averages are shown for exact matches only, and that results will be less accurate when you target a small geographic location because there is simply less data.
So what do you trust? The search results page.
Search the term yourself, in an incognito window. If a map pack appears, it is a local intent term, whatever the volume tool says. If the results are all national content sites, it is not. The SERP is ground truth and it is free.
Step four: local keyword research specifically
This section is the one that separates dental SEO from SEO in general.
Work through all seven for every service you offer. Most practices target the first one and ignore the other six, which is why the map pack in most towns is a fight over a handful of terms while dozens of easier ones sit uncontested.
The city by service matrix, and why most of it should stay empty
Take your service list across the top and your geography list down the side. You now have a grid.
The temptation is to fill every cell. Twenty five services times five towns is one hundred and twenty five pages, each one an opportunity, and there is software that will generate all of them overnight.
Do not do this. Here is why.
- Swap the city name and the page is still true
- Same content, different heading
- No mention of anything specific to the area
- Exists only to rank
- Twelve of them published on the same day
- Contains something only true of that location
- Directions, parking, transit, nearby landmarks
- Named clinicians who work at that site
- Local patient stories or community involvement
- Built one at a time, because they take work
Google names this behaviour explicitly in the spam policies, and the example they give is almost exactly the spun city page pattern: multiple pages targeted at specific regions or cities that funnel users to one page.
The practical test fits in a sentence. If you could swap the city name and the page would still be entirely true, it is a doorway page.
A location page that survives the test has something in it that is only true of that location. Directions from a specific road. Which metro stop. Where to park. Which clinician works that day. A patient story from that area. That takes a morning to write properly, which is exactly why practices that do it well are not competing with a hundred spun pages.
Step five: the gap analysis, which tells you what to build
Everything so far has been about what you could target. The gap analysis tells you what your competitors are already winning that you are not.
One instruction before you start: choose your competitors by searching, not from memory. Open an incognito window, search your main service plus your city, and take the four practices that actually appear in the results. Those are your competitors. The practice down the road that you dislike and that has a terrible website is not your competitor if it does not rank.
Reading the six categories
| Category | Semrush definition | Your action |
|---|---|---|
| Missing | Every competitor ranks, you do not rank at all | Build a page. This is your content backlog, in priority order |
| Weak | You rank, but lower than all of them | Improve the existing page. Fastest wins on the whole list |
| Untapped | At least one competitor ranks, you do not | Evaluate. Some are real gaps, some are terms nobody should target |
| Strong | You rank higher than all of them | Defend. Keep the page fresh, watch for slippage |
| Shared | Everyone ranks, including you | Normal. Your competitive battleground |
| Unique | Only you rank | Often brand terms. Occasionally a genuine moat |
Most practices open this report, see the Missing tab, and start writing. That is the wrong tab to start with.
Start with Weak. Weak means you already rank for the term, just worse than everyone else. There is already a page, Google already associates it with the topic, and improving it is a day of work. Missing means building a page from nothing and waiting a quarter for it to gain any traction.
Same list. Very different cost per result.
The walkthrough, click by click
- Open an incognito window. Search your highest value service plus your city. Write down the first four practice websites that appear. Ignore directories, ignore Yelp, ignore anything that is not a practice.
- Open the Keyword Gap tool. Put your domain in the first box and those four in the next four.
- Set the comparison to Organic keywords. Run it.
- Click the Missing tab. Sort by volume, descending. Export it.
- Click the Weak tab. Sort by your own position, ascending, so the terms where you are closest to competing appear first. Export it.
- In the Weak export, add a column for the URL that currently ranks. That column tells you which existing page needs work, which is the whole point.
- In the Missing export, delete every row where the search intent is navigational or where the term is obviously another practice brand name. This usually removes a third of the list.
- What is left is your content backlog, and it is now in priority order without you having made a single subjective decision.
What a real gap report looks like
| Keyword | Intent | Vol. | You | Comp. A | Comp. B | Comp. C |
|---|---|---|---|---|---|---|
| doctor [city] | Informational, Transactional | 70 | none | 13 | 31 | 41 |
| orthodontist [city] | Commercial, Navigational | 40 | none | 84 | 13 | 6 |
| best orthodontist in [city] | Commercial | 30 | none | 36 | 14 | 21 |
| [city] teeth | Informational | 30 | none | 35 | 9 | 29 |
| [city] cosmetic and implant dentistry | Informational, Navigational | 40 | none | 55 | 8 | 43 |
Five terms. Four competitors ranking on every one. This practice appearing on none of them.
That is not a subtle finding that requires interpretation. It is a list of pages that need to exist, in order, with the demand already proven by the fact that four other practices are ranking for them.
It is also, usually, the single most uncomfortable document a practice owner sees during an audit, and the most useful.
Step six: cluster and map
You have a filtered list. Now it has to become a site structure.
The silo
The mechanism is straightforward. The pillar page signals to Google that you cover a topic comprehensively. The cluster pages answer specific questions the pillar cannot answer in depth without becoming unreadable. The internal links between them communicate the relationship.
The links are the part people skip, and they are load bearing. A cluster page with no link up to its pillar is not part of a cluster. It is an orphan page with a keyword on it.
The linking rules, concretely
- Every cluster page links up to its pillar, using descriptive anchor text that names the topic. Not "click here" and not "our services".
- The pillar links down to every cluster page, placed in the section where that subtopic is introduced rather than in a list at the bottom.
- Cluster pages link sideways to each other only where a reader would genuinely want that link. Mechanical cross linking is visible and it does not help.
One page, one keyword
| Page type | Intent it serves | Example target | How many |
|---|---|---|---|
| Homepage | Navigational, transactional | dentist [city] | One |
| Service page | Commercial, transactional | dental implants [city] | One per real service |
| Location page | Transactional | dentist [neighbourhood] | Only with real local proof |
| Blog post | Informational | how long do implants last | Many, clustered |
| Insurance / finance page | Commercial | out of network dentist [city] | One, high value |
| Emergency page | Transactional | emergency dentist [city] | One, always |
This table is the output of the mapping step and it is the thing you check for conflicts. If two rows have the same primary keyword, you have a problem.
The free route, for practices without a tool budget
Everything above used Semrush. It is the best tool for this work and if you can justify the cost it will save you days. But a lot of dental practices cannot justify it, and the honest answer is that you can do about eighty percent of this for nothing.
| Tool | Cost | What it does well | The catch |
|---|---|---|---|
| Google Search Console | Free | Real queries your site already appears for, with position and impressions | Only shows terms you already rank for |
| Google Keyword Planner | Free | Volume estimates straight from Google, city level targeting | Rounded ranges without ad spend, and Google warns accuracy drops for small areas |
| Google autocomplete and PAA | Free | The exact phrasing real people use, localised to where you are | No volume data at all |
| Google Trends | Free | Seasonality, and metro level comparison | Relative numbers only, no absolute volume, no city level |
| Bing Webmaster Tools | Free | Genuine keyword research built on Bing clickstream data | Bing scale data, not Google scale |
| Ahrefs Webmaster Tools | Free | 1,000 keywords and backlinks for a site you own | Requires verifying ownership |
| Keyword Surfer | Free | Volume overlaid on the Google results page as you search | Chrome extension only |
| Ubersuggest | Free tier | Quick volume and difficulty checks | Three searches a day |
| AnswerThePublic | Free tier | Question phrasing, visually organised | Three searches a day, 30 keyword exports |
| Semrush free account | Free | Ten queries a day across every major tool | Ten a day goes quickly |
The free stack, in the order you should use it
1. Google Search Console, which you already own
This is the most underused free keyword tool in existence, and it has one enormous advantage over every paid tool: it is your actual data, not an estimate.
The Performance report shows every query where your site appeared, how many impressions you got, how many clicks, and your average position. That is real, it is specific to you, and it is free.
2. The position eleven to twenty filter
This is the highest return ten minutes available in free SEO and almost nobody does it.
| Query | Impressions | Clicks | Position |
|---|---|---|---|
| cost of dental implants [city] | 1,840 | 7 | 14.2 |
| invisalign vs braces adults | 1,120 | 3 | 16.8 |
| emergency dentist [city] | 890 | 2 | 11.4 |
| out of network dentist [city] | 610 | 1 | 18.1 |
| porcelain veneers cost [city] | 540 | 0 | 19.6 |
Filter the Performance report to average position greater than 10 and less than 21. Sort by impressions. What you are looking at is every query where you are on page two, being seen and not clicked.
Backlinko analysed 12.1 million queries and found the top three organic results take 54.4 percent of clicks while page two takes 0.63 percent. The drop from page one to page two is not a gradient, it is a cliff.
Every query on that filtered list is a page that already ranks, already has some authority, and needs improving rather than creating. It is the cheapest traffic available to you.
3. Google Keyword Planner, with realistic expectations
- Volume shown as ranges: 100 to 1K
- Rounded, never exact
- Google warns accuracy drops for small geographies
- Which is exactly what a local practice needs
- Use it for relative comparison, not absolutes
- Cross check against Keyword Surfer or Ubersuggest
- Use the city targeting, which is genuinely good
- Trust the SERP over the number: if a map pack appears, it is a local term
It is free, it comes from Google, and the city targeting is genuinely useful. The volume ranges without active ad spend are coarse, and Google warns about accuracy for small geographies. Use it for relative comparison rather than absolute numbers.
4. Autocomplete, People Also Ask, and related searches
Type your service into Google and do not press enter. The suggestions are real queries, weighted by what is common and localised to where you are.
Then search it properly and read the People Also Ask box. Click one of them and the box expands with more. Ten minutes of this produces a list of patient questions in patient language, for free, and it is often better phrased than anything a tool returns.
5. Google Trends for seasonality
Dental search has seasonality. Whitening spikes before weddings and holidays. Emergency care spikes over long weekends when other practices are closed. Insurance and benefit related searches spike in the last quarter as people realise their benefits are about to reset.
Trends will show you this at metro level, which for most practices is close enough to be actionable. It gives you relative popularity rather than absolute volume, so use it to decide when to publish rather than what to publish.
6. Bing Webmaster Tools, which nobody uses
Bing has a genuinely free keyword research tool built on its own clickstream data. Since you are verifying the site there anyway, it costs nothing extra. The numbers are Bing scale rather than Google scale, but the relative picture is useful and the phrasing suggestions are different enough to be worth having.
The free route, as an actual two week plan
A stack of tools is not a method. Here is the free route as a sequence you can follow.
- Day one. Export your Search Console Performance report for the last twelve months, queries and pages, as two CSVs. This is your starting picture and it costs nothing.
- Day two. Filter the query export to position 11 to 20, sort by impressions. This is your fix list. Usually between ten and forty rows.
- Day three. Build the seed list on paper. Services, patient questions, geographies. No tools.
- Days four and five. Google autocomplete and People Also Ask for every seed. Copy every suggestion into a spreadsheet. Tedious, free, and the phrasing is better than any tool output.
- Day six. Keyword Planner. Paste your combined list in, set the location to your city, and pull volume ranges. Accept that they are ranges.
- Day seven. Keyword Surfer or Ubersuggest to sanity check the terms you care most about. Three searches a day on the free tier, so pick your three carefully.
- Week two. Manual competitor check. Take your four competitors and go through their site menus page by page. Write down every service page and every blog post they have. That list, minus what you already have, is a manual gap analysis.
- End of week two. Group everything into clusters by hand and build the planner.
It is roughly three times the work of the paid route and it produces a result that is good enough to act on. The one thing you genuinely cannot replicate is knowing which specific terms your competitors rank for and where. The manual site crawl gets you the topics but not the positions.
What the paid tool actually buys you
To be clear about the trade, because this guide is not here to sell you software.
| What you get free | What Semrush adds |
|---|---|
| Queries you already rank for | Every query you could rank for |
| Your own data | Every competitor's data |
| Rounded volume ranges | Specific volume and difficulty scores |
| Manual grouping in a spreadsheet | Automatic clustering into pillars and subpages |
| No competitor comparison | A four way gap analysis in ninety seconds |
| A day of work | Two hours |
The gap analysis is the thing you cannot replicate for free. Everything else has a workaround.
| Plan | Monthly | Annual, per month | Sites | Keywords tracked daily |
|---|---|---|---|---|
| Free | $0 | $0 | 1 | 10 |
| SEO | $139 | $117.33 | 5 | 500 |
| Starter | $199 | $165.17 | 5 | 500 |
| Pro+ | $299 | $248.17 | 15 | 1,500 |
| Advanced | $549 | $455.67 | 40 | 5,000 |
There is also a genuinely free Semrush account: ten queries a day across the main tools, one project, ten tracked keywords. Ten queries goes quickly, but if you are disciplined about which ten, you can work through a research project over a fortnight without paying anything.
Step seven: the content planner
This is the deliverable. Everything up to here was research. The planner is what a writer, a developer and a practice owner all work from, and it is the difference between a content programme that ships and one that stalls in month two.
What every row needs
| Column | Why it exists |
|---|---|
| Priority | 1, 2 or 3. Forces a decision about order instead of publishing whatever is easiest |
| Target keyword | One per row. With volume in brackets so nobody forgets why it is on the list |
| Secondary keywords | Three to eight. What else this page should reasonably rank for |
| Semantically related terms | Terms that should appear naturally in the copy. Not a stuffing list |
| Meta title | Written at planning time, not at publishing time, when everyone is tired |
| Meta description | Same reason |
| Pages to interlink | The exact URLs this page must link to. Usually the pillar and two siblings |
| Contextual anchor text | The phrases to use for those links. Prevents everything becoming "click here" |
| Top three ranking articles | What currently ranks. The writer reads these first and writes something better |
| Minimum word count | A range, from what already ranks. Not a target to pad towards |
| Synopsis and positioning | Two sentences on the angle. The difference between generic content and yours |
| Status | Not started, briefed, drafted, in review, published |
| Published URL | Filled in at the end. This is how the planner becomes your site map |
Thirteen columns looks like overkill until you have briefed a writer without them and received back something you have to rewrite.
The two columns people most often leave out are the two that matter most. Top three ranking articles, because a writer who has not read what currently ranks cannot beat it. And synopsis and positioning, because it is the only column that stops the content being interchangeable with every other dental blog on the internet.
How to fill a row, in practice
Take one keyword from your priority list and work left to right.
- Search the target keyword in an incognito window. Open the top three results in tabs. These go in the Top three ranking articles column.
- Read all three properly. Note what each one covers, what it leaves out, and how long it is. The word count range in your planner comes from what already ranks, not from a rule of thumb.
- Write the synopsis. Two sentences on what your version will do that those three do not. If you cannot answer that, this row should not be on the list.
- Write the meta title now, while you are looking at the competing titles. Sixty characters or so. Put the keyword near the front without contorting the sentence.
- Write the meta description now for the same reason. It is a sales line, not a summary.
- Pick the interlinks. Which service page does this support? Which two sibling posts does it naturally reference? Put the exact URLs in.
- Write the anchor text for each link. Descriptive, naming the topic. This is the column that stops every internal link on your site being the phrase "learn more".
- Pull the secondary and semantically related keywords from your cluster export. Three to eight secondaries, and a handful of related terms that should appear naturally.
Fifteen minutes a row, once you have a rhythm. Forty rows is a working week, and it is the single highest leverage week of work in a content programme, because every hour spent here removes several hours of rewriting later.
Building it in Semrush
If you have the subscription, the Keyword Strategy Builder does the clustering step for you.
The sequence is: run the Keyword Magic Tool, select the keywords worth keeping, send them to the Keyword Strategy Builder, and let it group them into topics with a pillar page and subpages. It handles up to 10,000 keywords per list.
Then review what it proposed and overrule it where it is wrong, because it will be wrong sometimes. It groups on semantic similarity, not on how a dental practice thinks about its services, and occasionally it will put a high value commercial term in with a pile of informational ones.
What used to be a day in a spreadsheet becomes twenty minutes of review. That is the actual value of the subscription, more than the keyword data itself.
A real planner, with the names removed
| Pri. | Meta title | Target keyword | Words |
|---|---|---|---|
| 1 | Dental Implant Healing Timeline: What to Expect Week by Week | how long does it take for dental implants to heal | 1,400 to 1,700 |
| 2 | What Do Dental Implants Look Like? A Visual Guide | what do dental implants look like (880/mo) | 1,000 to 1,300 |
| 2 | How Long Does a Dental Implant Procedure Take? | how long does a dental implant procedure take | 1,200 to 1,500 |
| 3 | How to Relieve Pain After Dental Implant Surgery | how to relieve pain from dental implant (590/mo) | 1,100 to 1,400 |
Notice what those rows have in common. Every one is a question a patient asks. None of them is a service name with a city attached.
That is the structure that works. The service page targets the commercial term and is the page you want people to convert on. The blog posts answer the questions that bring people in earlier, build the topical depth that helps the service page rank, and link up to it.
Turning the planner into a schedule
Two rules make this work in practice.
First, do not publish everything at once. A dental site that publishes twelve posts in one week and then nothing for four months looks exactly like what it is. Steady is better than bursty, and two well researched posts a month beats eight rushed ones.
Second, link every new page into its silo on the day it goes live. Not later, not in a monthly cleanup. The internal link is part of publishing the page, and pages published without it tend to stay orphaned forever.
What happens next
At the end of this process you have a spreadsheet with somewhere between fifteen and forty rows, ordered by priority, each one with a target keyword, a brief, and a word count range. You know which pages to fix and which to build. You know which terms your competitors own that you do not.
And you have a gap you cannot close with research alone, which is the writing.
Because here is the thing nobody in this industry says plainly: a perfectly researched page with mediocre copy will not outrank a mediocre page with excellent copy. The research tells you what to write about. It does not write it, and the writing is where most dental content quietly fails.
The next guide in this series covers that. How to write the copy that actually ranks, without buying a single backlink. How to structure a page so it answers the query in the first two hundred words. What to do about the pages that already rank above you. And why almost everything a dental practice is told about backlinks is a distraction from the work that actually moves positions.
Next in this series: how to write the copy that actually ranks, without any backlinks.