Two practices four miles apart compete in different cities here. Google shows three in the local pack, proximity decides most of it, and citywide targeting means ranking nowhere in particular. We build for the two or three submarkets you actually draw patients from.
The strategy that fills a Noe Valley schedule does almost nothing for a Financial District office. Forty-nine square miles, several hundred practices, and a patient base that rarely crosses town for a cleaning.
Proximity decides most of it, which means the work that matters is not ranking for “dentist San Francisco.” It is winning the submarkets you actually draw patients from, on the platforms this city actually uses, without tripping over California advertising rules on the way.
Your catchment is a few square miles. Keyword mapping and page architecture start there rather than at the city line.
In most markets you can ignore it. Not this one. Profile, photos, and a review process that works with Yelp’s filter instead of against it.
Your title tags are advertising under B&P 651. Most dental SEO vendors have never read the section.
Google shows three practices in the local pack and weights proximity heaviest. In 49 square miles with several hundred practices, the radius stays tight: a Sunset practice cannot appear in the pack for a search made in the Mission, however good its SEO is.
Each submarket is its own market. Own payer mix, treatment demand, and competitor set, which is why the searches that convert carry a submarket attached.
Mapping starts from your catchment, not the city name. Where you draw real volume from an area, that area gets its own optimised page rather than a mention on this one.
SF names are colloquial, not administrative. NoPa, the Inner Richmond, Dogpatch, and the Mission exist in how people search, not on a boundary. Suite and medical-building addresses get placed imprecisely as a result. Fixable, and almost always missed.
A patient searching with a neighbourhood attached has already decided roughly where they want to go, which makes those terms both easier to rank and closer to a booking.
Most San Francisco practices have one page for the whole city and nothing underneath it. Building that tier properly is the highest-return work available in this market. Building it badly produces near-duplicate pages Google ignores, which is why the execution matters more than the idea. It is the core of our local SEO work here.
Lower volume each than the city term, and far closer to a booked appointment.
In most US markets an agency can optimise your Google Business Profile, skip Yelp, and still deliver. This is not most markets. Yelp usage for local service discovery runs unusually high here, and a real share of prospective patients see that profile before they ever reach your website.
Yelp’s software filters reviews it judges to be solicited, so the request process most practices run for Google produces Yelp reviews that sit hidden behind a “not currently recommended” link. Practices conclude they have a review problem when what they have is a channel problem.
We run it as a ranking and conversion surface in its own right: profile completeness, photos, categories, response handling, and a review approach built around the filter. Then both profiles get told the same story, along with the rest of your listings and citations.
Google serves different local results depending on device language. This is how a practice can be visible in English and invisible in Chinese from the same address.
You appear in the pack
Same address. Not in the results.
Most practices here have never set them, so patients filtering by language never see you.
In healthcare a bad translation reads as a warning sign. Worse than publishing nothing.
They carry weight with the patients reading them, and with local prominence.
The right second language in the Outer Sunset is not the right one in the Mission.
A general dentist ranking a page titled “Orthodontist in San Francisco” is making a specialty claim. The rules restrict holding yourself out as a specialist without the credentials, and implying it without using the word can still be a problem.
We have audited practice sites where a previous vendor optimised half a dozen pages this way and never raised it. The exposure sits with the practice, not the agency.
Section 1680 prohibits false, misleading, or deceptive advertising. Sections 1054 and 1054.1 govern how credentials and specialty status may be advertised. A summary, not legal advice: your own counsel should confirm anything specific to your practice.
The keyword research does not change. Only the phrasing does.
Categories, services, appointment links, photos, Posts, Q&A, and the language attributes most San Francisco practices have never set.
See the service →Optimised for your catchment, because citywide targeting in a 49 square mile city means ranking nowhere in particular.
See the service →A real page for each area you draw from, researched rather than templated. The highest-return asset in this market.
See the service →This patient base reads before it books. Real clinical substance, transparent pricing where you will publish it, no filler.
Profile, photos, categories, responses, and a review process built around the recommendation filter instead of fighting it.
Name, address, and phone identical everywhere Google looks, with suite and medical-building addresses corrected where Google has misplaced you.
See the service →Core Web Vitals, mobile load speed, crawl errors, indexation, internal structure, schema. This audience abandons slow sites quickly.
See the service →HIPAA-mindful request and response workflows across both platforms, including reviews in Chinese and Spanish.
Every title, heading, and claim checked against B&P 651 and 1680 before it goes live, rather than after a complaint.
San Francisco patients adopt new search tools earlier than almost anyone. ChatGPT, AI Overviews, and Perplexity need clear structured signals about who and where you are.
See the service →Every item on this list is in scope from month one, not a line you will be quoted separately for later.
See all services in detail →This ordering is deliberate, and close to the reverse of what we would build in a cash-pay market. San Francisco case values and a heavily insured, high-income patient base push elective and restorative work up the list.
Four stages, in order. You will know what is happening and when before you pay for any of it.
Where you are losing visibility: profile, submarket rankings, Yelp, and which practices are beating you inside your own few miles. Plain English, first three fixes, no 40-page scare report.
Built around your catchment and the procedures you want. Nothing goes live until you have approved it.
Technical fixes, profile work, neighbourhood and treatment pages, schema, review workflow, language setup, advertising review.
Content, local authority, map pack position by submarket, and conversion work on pages already earning traffic.
Three to six months for meaningful movement, the same range we quote everywhere. San Francisco is more competitive than most, so we would rather say that now than at month four.
All we need from you: a few approvals and read-only access.Unedited screenshots from Google, real dental SEO work Shubham did before starting Elvora.
Shown with client permission


Worth saying plainly: these are from practices outside San Francisco, and San Francisco is a harder market than most of them. The work is the same. The timeline in a contested Pacific Heights or Financial District submarket usually runs longer, and we would rather tell you that now than at month four.
San Francisco practices get pitched more SEO than almost anyone. Bay Area agency density means a busy front desk can field several cold calls a week, most from firms that will run your account through a template and hand it to whoever is free that month.
I started Elvora because I watched too many practices pay for a year of SEO and get nothing but charts. So we do it backwards: you own every account, there’s no contract, and we show you what we’d fix, free, before you decide. If it isn’t working, you leave. That keeps the pressure on us, where it belongs.
Shubham Gupta, FounderMonthly SEO, built around your practice
Exactly what you pay. No hidden line items.
Most dental SEO agencies keep pricing behind a phone call or a free audit. We publish ours.
Foundation covers five pages of on-page work: your core service pages plus your first neighbourhood page. If your submarket calls for a wider tier, we say so on the call, before you commit. Full pricing across all plans →
We’ll check where your practice shows up across your San Francisco submarket, your Google Business Profile, your Yelp presence, your map pack position, and how consistent your listings are, then send a plain-English breakdown of what’s working and what isn’t. No call required, no obligation.
We only use this to run the snapshot. No sales sequence.
We’ll run the audit, show you your map pack position inside your own submarket, check your Yelp profile alongside Google, and tell you what we’d fix first. Free, no obligation, and the findings are yours either way.
Prefer to talk it through? Book a free 30-minute call · See pricing