Why Dentists need this
A nearby dentist with a steady stream of fresh reviews can outrank you in the map pack even when your practice has more pages and more links. In one published local rankings case study, the lagging practice also had errors in 11 of its 13 key citations, which is the kind of quiet inconsistency that makes Google unsure which listing belongs to which website. Add the fact that dentistry is a health topic, where Google expects accurate, expert-consistent content and weighs trust signals more heavily, and a messy contact page becomes a real liability.
The Local SEO Audit looks at the website half of that problem. Paste your homepage or contact page URL and it reports whether your name, address, phone number, LocalBusiness markup, map link, opening hours and social links are readable in the HTML. You get a percentage score and a fix for every failed check. It cannot see your Business Profile or other directories, so treat it as one half of local SEO for dentists, not the whole job.
Dentists specific guidance
Run the homepage and the contact page separately
Start with two runs, one on your homepage and one on the page that carries your address, such as https://www.example-dental.com/contact or a location page like /locations/downtown. The tool reads the HTML as served and runs no JavaScript, so a phone number or hours widget injected by a booking plugin may not count even though patients see it. Open the page source in your browser with view-source: and search for your phone number; if it is not there, the tool will not find it either. Keep your Business Profile open beside the results and type its name, phone and address into the optional fields. The Business Profile match block then compares them with the page. It only knows what you type, so it proves nothing about the live profile itself or about listings on other sites.
Reading the score and its three groups
The score is the percentage of check weight passed, split into NAP and Identity, Maps and Hours, and Trust and Social. For a practice, the schema row matters most: any LocalBusiness subtype such as Dentist counts when the node carries an address or geo. The address check needs the word address in the source plus a street word, so a footer that shows only a city and postcode can fail even though it looks complete to a patient. Geo coordinates are optional, so do not chase them first. A high score does not mean you will appear in the map pack; it means your website is not contradicting you. Reviews, categories and rankings sit outside what this reports.
What to fix, and in which order
Fix the phone and address first, because every directory should match them character for character. Make the phone a tel: link and write the address as plain text, not as an image of a map. Next add Dentist JSON-LD with address, telephone and openingHours; the Schema Generator builds it and the Schema Checker confirms it is live. Then add a Google Maps embed or directions link and a Facebook or Instagram link if either is missing. Last, give each treatment its own page, since a homepage rarely ranks for something like teeth whitening on its own. This audit will not tell you whether those pages exist or are any good. Re-run after each change and compare the score; each step takes about ten minutes.
Example scenarios
1. Address saved as a logo image
- Situation
- Illustrative example: A single-dentist practice redesigned its site, and the designer placed the street line inside the footer logo graphic. Visible text now says only 'Riverside, 90210', so the street address no longer exists as readable text.
- Input
https://www.example-dental.com/contact- Reading the result
- You would typically see the phone number pass and the Physical address (NAP) check flagged, pulling the score to somewhere around 55 to 65 percent. Fix it by typing the full street line as text. Passing afterwards does not prove the address matches your Business Profile; use the optional fields for that.
2. Hours in text but not in schema
- Situation
- Illustrative example: A two-location dental group lists 'Mon 8:00 - 17:00' in a text table on each location page, but the site was built before anyone added structured data. No JSON-LD of any kind sits in the page source.
- Input
https://www.example-dental.com/locations/downtown- Reading the result
- Opening hours would likely pass because a day name followed by a time appears in the text, while the LocalBusiness / Organization schema row is flagged. The fix is a Dentist JSON-LD block with that location's own address and openingHours. The result says nothing about whether the other location page is correct.
3. Old phone number after a switch
- Situation
- Illustrative example: A practice moved to a new phone line six months ago and updated its Business Profile, but a leftover number remains in the footer template and the old contact page. The owner enters the profile's name, phone and address into the optional fields, and the page source holds 2 different numbers.
- Input
https://www.example-dental.com/- Reading the result
- The Business Profile match block would report the phone as not matching and list the 2 numbers it did find on the page, making the stale one easy to spot. Name and address could still match. This shows the site disagrees with what you typed; it cannot confirm what other directories show.
Common mistakes
- Auditing only the homepage. The address, hours and map often live on the contact or location page, so a homepage-only run can miss them or mislead you. Run both pages and compare.
- Trusting what the browser shows. Details injected by a booking widget or page-builder script may be invisible to a tool that reads the served HTML. Check view-source before assuming a row is wrong.
- Writing the phone number as plain text. Patients on a phone expect to tap and call, and the tool looks for a tel: link as well as a visible number. Wrap the number in a tel: link in the header and the contact page.
- Treating a clean score as a ranking fix. A passing audit only means your website is consistent. Review recency, citation errors on other sites and distance to the searcher still decide who takes the map-pack spots.
- Leaving treatments on one page. Patients search for whitening, implants or emergency visits rather than just 'dentist', and a homepage seldom ranks for those terms alone. Give each treatment its own page with the practice details.
Frequently asked questions
How do I do local SEO for dentists on my own website?
Start with the basics the website controls: one consistent practice name, a full street address in text, a clickable phone number, opening hours and Dentist schema. Run the Local SEO Audit on your homepage and contact page, fix each flagged row, and re-run. Most practices can clear the obvious gaps in one sitting. That covers the site side only. Your Business Profile, reviews and directory listings still need attention separately, and the audit cannot see them or promise any ranking change.
Does the audit check my Google Business Profile or citations?
No. It never reads your Business Profile. If you type your profile's name, phone and address into the optional fields, it compares those typed values with your page and lists the numbers it found. It does not check Yelp, Apple Maps, Bing Places or Facebook listings, reviews, categories or map-pack positions. The comparison is useful for spotting a website that disagrees with your profile, but it is only as accurate as what you enter.
Why does it say my address is missing when it is in my footer?
The address check looks for the word address in the source plus a street word such as street, st., avenue, road or blvd. A footer that shows only a suburb and postcode, or an address saved as an image, can miss it. Write the full street line as plain text, for example 120 Main Street, Suite 4, and run it again. Page builders that load the footer with JavaScript can also hide it, because no scripts are run.
What schema should a dental practice website use?
Use a LocalBusiness subtype such as Dentist in JSON-LD, with name, address, telephone, openingHours and, if you like, geo coordinates. The audit counts any LocalBusiness subtype when the node carries an address or geo. Build it in the Schema Generator, paste it into your homepage or contact page, then confirm it parses with the Schema Checker. Markup helps Google read your details; it does not guarantee a rich result or a ranking.
Is a good score enough to rank my dental practice on Google Maps?
No. A strong score means your site shows a consistent name, address, phone, hours and map signals. How a dental practice ranks on Google Maps also depends on reviews and how recent they are, your profile categories and the searcher's distance. One case study showed a rival with steady monthly reviews outranking a practice with more links. The audit reports none of those factors, so use it to remove website contradictions and work on reviews separately.
Reference: The BrightLocal local rankings investigation of two dentists shows a practice with stale reviews and citation errors losing the map pack to a rival with a steady monthly stream of reviews.