Generative Engine Optimization (GEO) measures how well your practice surfaces inside AI-driven search — the answers people now get from Google's AI Overviews, ChatGPT, Perplexity, Gemini and Bing Copilot when they ask "who's a good dentist in North York?" or "where can I get Botox near me in Toronto?" This is a different game from classic SEO. Classic SEO fights for a blue link on a results page; GEO fights to be the practice an AI names, quotes and recommends inside a synthesized answer. Northside Dental & Wellness scores 44/100 here — meaningfully behind your Reputation score (62) and your Marketing score (55). The short read: you are a real, well-reviewed, professionally-presented clinic that is, today, largely invisible to the machines that increasingly mediate the first question a new patient asks. Your 4.3-star reputation and your new medical-aesthetics line are genuine assets, but they live in formats AI systems can see (your brand) far better than in formats AI systems can cite (structured, attributed, quotable content). The good news is that almost everything dragging this number down is fixable with structural work rather than a rebuild — and several of the fixes are among the cheapest, fastest items in this entire audit.
To make the stakes concrete: a growing share of "find me a dentist" or "is this treatment safe?" journeys now begin not with a results page but with a conversational prompt — typed into ChatGPT, spoken to Gemini, or read straight off the AI Overview that sits above the old blue links. In that world, ten ranked results collapse into one synthesized paragraph that names two or three practices. If you are not one of them, you are not on page two — you are simply not in the answer. That is why a clinic can have an excellent reputation among humans (as you do) and still be nearly absent from the layer those humans increasingly consult first. The 44 is not a verdict on your practice; it is a measurement of the translation gap between what you are and what the machines can currently read.
| GEO Sub-Dimension | Score | Grade |
|---|---|---|
| AI Citability | 35 / 100 | F |
| Brand Authority | 60 / 100 | C− |
| Content E-E-A-T | 40 / 100 | F |
| Technical GEO | 55 / 100 | C |
| Schema & Structured Data | 45 / 100 | F+ |
| Platform Optimization | 40 / 100 | F |
One-line reads: AI Citability — little quotable, attributable content; nothing an AI can lift verbatim and credit to you. Brand Authority — real footprint across Google/directories; thin beyond the basics, weak entity consistency. Content E-E-A-T — first-name-only clinicians, no credentials, no bios — low machine-readable expertise signal. Technical GEO — HTTPS and sitemap fine; likely JS-dependent rendering risks an empty shell to AI crawlers. Schema & Structured Data — generic Dentist schema; rating, FAQ, entity graph and the aesthetics line all invisible. Platform Optimization — underprepared across every major AI surface; strongest on Google "near me," weak elsewhere.
The pattern is consistent: your brand exists (60) but your content can't be cited (35) and your expertise can't be verified by a machine (40). AI systems reward the opposite — they cite specific, attributed, structured claims. That gap is the core story of this audit.
Read the table top-to-bottom and a clear hierarchy of remediation emerges. The two highest numbers — Brand Authority (60) and Technical GEO (55) — represent foundations that mostly exist and need reinforcing rather than building. The four lower numbers — Citability (35), E-E-A-T (40), Platform Optimization (40), Schema (45) — represent the translation layer between your real-world strengths and the machines, and that layer is where nearly all the upside lives. Crucially, these are not six independent worksites. The same handful of structural moves — getting your content into raw HTML, marking it up with the right schema, surfacing your clinicians' real credentials, and publishing genuine question-shaped answers — lifts four or five of these sub-dimensions at once. That interdependence is the reason a 44 can move quickly: you are not fixing six problems, you are removing a small number of shared bottlenecks that are each suppressing several scores simultaneously.
Citability asks a blunt question: if an AI assistant is composing an answer about dentists or medical aesthetics in North York, is there anything on your site it can pull out, quote, and attribute to you? Right now, mostly no.
Your website reads as marketing brochure copy — warm, benefit-led, written for a human skimming a homepage. That's appropriate for a human, but it's the wrong shape for a generative engine. AI systems preferentially lift content that is self-contained, factual, specific and phrased as an answer. A sentence like "We're passionate about giving your family a smile to be proud of" is invisible to citation; a sentence like "Northside Dental & Wellness offers same-day emergency dental appointments on weekday evenings until 8 p.m. and on Saturdays" is highly citable, because it answers a real question in a liftable, attributable unit.
It is worth being precise about why one sentence is citable and the other isn't, because the distinction governs almost every recommendation in this report. A generative engine, when it drafts an answer, is looking for a sentence it can drop into its response with minimal risk — a claim that is specific (contains a concrete fact, number, name, or condition), self-contained (makes sense lifted out of its surrounding paragraph), attributable (clearly belongs to a named business it can credit), and verifiable (consistent with what other sources say about you). The brochure sentence fails all four: it is vague, it depends on the warm tone around it, it could belong to any clinic, and there's nothing to verify. The hours sentence passes all four. Multiply that across a whole site and you can see how a practice ends up with a citability score of 35 despite being a perfectly good clinic — almost nothing on the page is shaped like something a machine would dare to quote.
A few more before→after pairs make the target shape unmistakable:
In every pair the right-hand version is something an AI can lift, attribute to you, and stand behind — and it is also, not coincidentally, more useful to the human reader. Citability and helpfulness point in the same direction.
Specific gaps we found:
Why an AI won't name you today: when a model assembles "best family dentist near North York," it weighs (a) entity clarity — does it understand Northside as a distinct, well-defined business? — and (b) citable substance — is there attributable content to ground a recommendation? You're thin on both. The result is that AI answers about your category in your neighbourhood will tend to name competitors who have published Q&A and service-detail content, even where your actual reputation (4.3★, ~190 reviews) is stronger than theirs. You are losing the citation race on format, not on merit. That's the most fixable kind of loss — because format is something we can change in weeks without touching the underlying quality of your care, your team, or your reputation.
Brand authority measures how clearly and consistently the wider web "knows" you as an entity — the off-site signal AI systems use to decide whether you're a real, established business worth citing. This is your strongest GEO sub-dimension, and it rests on a genuine foundation.
Think of brand authority as the machine's confidence that you exist as one coherent thing. When an AI prepares to mention a business, it implicitly asks: is this a real, established entity that multiple independent sources describe consistently? The more places the web corroborates the same name, address, phone, services and reputation, the more confidently a model will surface you — and the less likely it is to confuse you with a similarly-named practice, to repeat a stale phone number, or to simply leave you out because it isn't sure you're a stable entity. Your 60 says the web knows you're real; it doesn't yet say the web knows you in full, rich, consistent detail.
What's working:
What's weak:
sameAs). Nothing on your site machine-links your website to your Google profile, your Facebook page, your RateMDs listing. To a human these are obviously the same business; to a machine they're disconnected dots. This is the difference between authority that exists and authority a model can assemble with confidence.The 60 reflects a real but under-leveraged brand. The reputation is there; the machine-legibility and breadth of it are not. The work here is consolidation and broadening rather than creation: connect the dots you already have, clean the inconsistencies, widen the footprint, and teach the web about the half of your business it currently can't see.
E-E-A-T — Experience, Expertise, Authoritativeness, Trustworthiness — is Google's framework for content quality, and AI systems apply a close cousin of it when deciding whom to trust in health-related topics specifically. Dentistry and medical aesthetics are squarely "Your Money or Your Life" subject matter, where engines apply the highest expertise bar. On that bar, your site significantly underperforms — not because the expertise isn't real, but because none of it is surfaced in a way a machine can verify.
The reason the bar is so high here is worth stating plainly: an AI that recommends the wrong restaurant has caused a mild inconvenience; an AI that recommends an unqualified provider for an injectable medical treatment has caused potential harm. Generative engines are tuned to be conservative precisely in health, finance and safety topics — they would rather cite a clearly-credentialed source than gamble on an ambiguous one. So in your category, the absence of visible credentials isn't neutral; it is actively read as risk, and it pushes the engine toward whichever competitor has surfaced their qualifications. You are being penalized not for lacking expertise but for keeping it invisible.
The core problems:
The fix here is unusually high-leverage because the substance already exists. Four real RCDSO-registered dentists and a real CPSO-registered supervising physician are a strong expertise base. The 40 reflects a surfacing failure, not a competence failure: you simply haven't told the machines who you are. Every recommendation in this section stays comfortably within RCDSO and CPSO advertising and professionalism standards — we are advising you to state verifiable facts about your own qualified team, which is exactly the kind of honest, substantiable claim those standards encourage, not to make comparative or superlative claims that the College frameworks restrict.
Technical GEO covers whether AI crawlers can actually reach, render and read your content. You can have perfect copy and it counts for nothing if the crawler receives a blank page. This is a middling score with one specific risk that could be quietly capping everything above it.
What's solid:
The material risk — JavaScript-dependent rendering:
Your site appears to be built as (or heavily relies on) a client-side-rendered single-page application — the kind of modern build where the initial HTML is a near-empty shell and the actual content paints in afterward via JavaScript in the browser. Here's the problem: Google's main crawler can execute JavaScript, but most AI crawlers largely do not. GPTBot, ClaudeBot, PerplexityBot and similar fetchers tend to read the raw HTML they're served and move on. If your content only exists after JS runs, what these crawlers actually "see" is an empty shell — and an empty shell is, to them, a site with no content to cite. This single issue can suppress citability, E-E-A-T and schema simultaneously, because none of it reaches the machine that matters.
To make the risk vivid: imagine you do all the right content work from sections 1–3 — you publish a beautiful FAQ, you list every clinician's full name and RCDSO registration, you describe the physician-supervised aesthetics line in liftable detail — but it all renders client-side. When GPTBot or PerplexityBot fetches the page, it receives something close to <div id="root"></div> and a bundle of JavaScript it won't execute. From the crawler's perspective, your richly-detailed page is blank. You'd have done the work and still earned nothing, because the audience that needed to read it never received it. That is why this finding sits upstream of almost everything else.
We flag this as the highest-impact technical fix: implement server-side rendering (SSR) or static pre-rendering so the full content (text, schema, the works) is present in the raw HTML response, no JavaScript required. Confirming and remediating this should precede most content work — there's limited value in writing brilliant citable FAQ content if the AI crawler never receives it. The simplest way to verify the issue yourself is to view the raw page source (or fetch the page with JavaScript disabled) and check whether your actual headings, paragraphs and schema are present in that raw HTML; if you see mostly empty containers and script tags, the finding is confirmed.
Core Web Vitals & performance: a modern professional build is usually decent here, but JS-heavy SPAs frequently carry slow Largest Contentful Paint and layout-shift issues that drag both human experience and crawler patience. We recommend a Core Web Vitals pass alongside the SSR work to confirm load performance isn't compounding the rendering problem. Crawlers operate under time and resource budgets; a page that is slow or heavy can be fetched incompletely or deprioritized, so performance and rendering are two facets of the same "can the machine actually read this?" question.
Schema markup (JSON-LD structured data) is the machine-readable layer of your site — the part that tells an AI, in its own language, exactly what you are, what you offer, how you're rated and how you connect to the rest of the web. It is the highest ratio of impact-to-effort in this entire audit, and right now it's badly underbuilt.
Schema is, in effect, you writing the machine's notes for it. Instead of making an engine infer from prose that you're a dental clinic open until 8 p.m. with a 4.3-star rating and a supervising physician, you hand it that information pre-structured, unambiguous and labelled. Engines strongly prefer not to guess, so a page that declares its facts in JSON-LD is easier to trust and easier to lift than one that buries the same facts in paragraphs. The gap between "present but minimal" (your current state) and "complete" is mostly code, with no copywriting bottleneck — which is why it's the fastest meaningful lever you have.
What we found and what's missing:
Dentist schema only. You have some structured data, which is why this isn't lower — but it's the bare-minimum Dentist type. It does not capture half of what you actually are. The single Dentist type can't express that you also run a physician-supervised medical-aesthetics line, can't carry your rating, can't hold an FAQ, and can't connect your profiles — it's a one-room schema for a multi-room business.AggregateRating markup — so your 4.3 stars are invisible to machines. This is the most painful gap on the page. You have ~190 reviews at 4.3 stars, a genuinely strong signal, and not one bit of it is expressed in structured data. Without AggregateRating schema, an AI assembling a recommendation has no machine-readable proof of your rating and may default to whoever did mark it up. Your best reputation asset is structurally mute.FAQPage schema. This pairs with the citability fix: once you publish FAQ content (Recommendation 3), wrapping it in FAQPage markup makes it dramatically more liftable into AI Overviews and assistant answers. Two fixes, one compounding payoff — the content gives the engine something worth quoting, and the schema labels it as exactly the question-and-answer format engines preferentially pull.sameAs entity graph. As noted under Brand Authority, nothing machine-links your site to your Google, Facebook and RateMDs profiles. sameAs is how you hand an AI the connected identity graph instead of making it guess. A handful of sameAs URLs in your organization schema is the most direct way to turn "disconnected dots" into "one confident entity."MedicalClinic / aesthetics-appropriate typing for the medical line. Your physician-supervised aesthetics service is, structurally, a different kind of entity than general dentistry — and it's getting zero dedicated schema. Adding appropriate medical-business typing, plus Physician markup for the supervising MD and MedicalProcedure/service entries, would make you legible in the entire aesthetics-search category you're currently invisible in. The cleanest structure here is usually a clear primary Dentist/DentalClinic entity for the core practice and a distinct, properly-typed medical-business entity for the aesthetics line, linked to a Physician node for the supervising MD — so an engine can resolve each side of the business correctly rather than mashing them into one ambiguous type.Person schema. Tied to the E-E-A-T fix: marking up each named, credentialed clinician as a Person with their qualifications turns surfaced bios into structured, verifiable expertise signals. A Person node carrying full name, jobTitle, hasCredential, alumniOf and a memberOf pointing at the RCDSO or CPSO turns a friendly bio into a machine-checkable credential record.Deeper gap analysis — the schema you have vs. the schema you need. The shortest way to see the opportunity is to lay the two states side by side:
| Schema element | Current state | Target state | What it unlocks |
|---|---|---|---|
| Business type | Generic Dentist only | Dentist/DentalClinic for the core practice plus a distinct MedicalClinic-appropriate type for aesthetics | Correct entity resolution for both halves of the business |
AggregateRating | Absent | 4.3★ / ~190 reviews expressed in JSON-LD | Machine-readable proof of reputation |
FAQPage | Absent | Wraps the new Q&A content | Liftable into AI Overviews / assistant answers |
sameAs | Absent | Links to Google, Facebook, RateMDs | One confident entity instead of scattered dots |
Physician | Absent | Supervising MD with CPSO standing | Credibility for the aesthetics category |
Person (per clinician) | Absent | Each dentist with name, credential, RCDSO link | Verifiable expertise signals |
OpeningHoursSpecification | Likely absent/partial | Exact hours incl. evening/Saturday | Citable answers to "open now / Saturday dentist" queries |
Service/MedicalProcedure | Absent | Named services with descriptions | Category-level visibility per treatment |
The 45 reflects "present but minimal." Because schema is code-level work with no copywriting bottleneck, it's typically the fastest meaningful GEO gain available — you can make your rating, your FAQ, your entity graph and your medical line machine-visible without rewriting a single human-facing sentence.
Different AI surfaces source their answers differently, so "AI visibility" isn't one readiness state — it's six. Here's how Northside currently reads across the platforms that matter, lowest-effort context first.
Before the per-platform breakdown, a useful mental model: every one of these engines is asking the same two underlying questions — can I read this site? and is there something here worth quoting and attributing? — but each weights different inputs to answer them. Some lean hard on your Google Business Profile and local signals; some lean on raw crawlable content and explicit citations; some inherit Google's index; one rides on Bing. So the same set of fixes (SSR, schema, citable Q&A, entity graph) helps everywhere, but it pays off in a slightly different order and shape on each surface. Here is where you stand, platform by platform, and what each one rewards.
AggregateRating and FAQ schema, plus the SSR risk, cap how often and how favourably you're pulled into the synthesized box. This is where remediation will pay back fastest.The throughline: you are least-bad where your real-world reputation can carry you (Google/local) and weakest everywhere that demands structured, citable, attributable content (ChatGPT, Perplexity). The platform fixes are not six separate projects — they're largely the same underlying schema, citability and SSR work, which then radiates across all six surfaces. Sequence it Google-first (fastest commercial payback), then ChatGPT/Perplexity (where the citability work proves itself), then confirm Gemini and Bing/Copilot ride along.
Before any of the above can help, the AI crawlers have to be allowed in and guided once they arrive. Two findings:
robots.txt — crawler permissions need explicit confirmation. Many sites unintentionally block or simply never address the newer AI crawlers (GPTBot, ClaudeBot, PerplexityBot, Google-Extended, Bingbot, CCBot and others). Some templates and security plugins block them by default. We recommend an explicit robots.txt review to confirm these agents are deliberately allowed — being citable starts with being fetchable, and an accidental Disallow here would silently nullify every other recommendation in this report. (The decision to allow each AI crawler is yours; our recommendation for a visibility-seeking practice is to allow the major reputable ones.) Worth underscoring: this is the cheapest possible way to lose, and the cheapest possible way to win — a single mistaken line in a text file can make an otherwise perfectly-optimized site invisible to a given engine, and a single corrected line can restore it.llms.txt — missing. There is no llms.txt file on your domain. This emerging standard is a plain-text file at your site root that gives AI systems a clean, curated map of your most important pages and facts — think of it as a concierge note written specifically for language models, free of marketing fluff and navigation clutter. It's low-effort, increasingly recognized, and exactly suited to a practice that wants to be understood correctly by AI. Its absence is a quick, clean win (Recommendation 1).llms.txt for Northside — example outlineTo make the recommendation concrete, here is the shape an llms.txt for your practice would take — a short, human-readable Markdown file at https://[your-domain]/llms.txt that gives an AI a clean, authoritative summary and a curated set of links:
# Northside Dental & Wellness > Family and cosmetic dentistry with physician-supervised medical aesthetics > in North York (Toronto), Ontario. RCDSO-registered dentists; aesthetics > administered under the supervision of a CPSO-registered physician. ## Key facts - Location: North York, Toronto, Ontario, Canada - Services: general & family dentistry, cosmetic dentistry, physician-supervised medical aesthetics (e.g. Botox, dermal fillers) - Hours: weekdays until 8 p.m., open Saturdays; same-day emergency slots - Insurance: direct-bills most major Canadian insurers - Rating: 4.3★ across ~190 Google reviews ## Core pages - [Services overview](https://[your-domain]/services) - [Medical aesthetics (physician-supervised)](https://[your-domain]/aesthetics) - [Our team & credentials](https://[your-domain]/team) - [New patients & insurance](https://[your-domain]/new-patients) - [FAQ](https://[your-domain]/faq) - [Contact & hours](https://[your-domain]/contact) ## Notes - All clinical content reflects RCDSO and CPSO professional and advertising standards. - For appointments, see the contact page or call the clinic directly.
The value is in the curation: you are telling the machine, in its preferred plain-text form, exactly which facts and pages matter and how to describe you — rather than leaving it to reconstruct that from brochure copy. It is among the lowest-effort, lowest-risk assets in this whole report.
| # | Issue | Sub-dimension | Why it hurts | Relative effort |
|---|---|---|---|---|
| 1 | Likely JS-dependent rendering — AI crawlers may receive an empty shell, nullifying content and schema | Technical GEO | Can silently zero out citability, E-E-A-T and schema at once | Medium–high (dev) |
| 2 | No AggregateRating schema — your 4.3★ / ~190-review asset is invisible to machines | Schema | Your best reputation signal is structurally mute | Low (code) |
| 3 | No citable / FAQ / Q&A content — nothing for an AI to lift and attribute to you | Citability | Engines cite competitors by default | Medium (content) |
| 4 | First-name-only clinicians, no credentials — fails the health-content expertise bar | E-E-A-T | Absent credentials read as risk in a YMYL category | Low–medium (content) |
| 5 | robots.txt AI-crawler permissions unconfirmed — risk of accidentally blocking the very agents you want | Crawler access | One mistaken line can nullify everything else | Very low |
| # | Issue | Sub-dimension | Why it hurts | Relative effort |
|---|---|---|---|---|
| 6 | No sameAs entity graph — profiles read as disconnected dots, not one confident entity | Authority / Schema | Lowers entity confidence; risks confusion/omission | Low (code) |
| 7 | Medical-aesthetics line absent from content, schema and off-site footprint — a whole high-intent category left on the table | E-E-A-T / Schema / Authority | Invisible in the entire aesthetics-search category | Medium |
| 8 | No llms.txt — missing the cleanest, simplest AI-guidance asset | Crawler access | Forgoes a free, curated machine summary | Very low |
| 9 | NAP / entity consistency unverified across listings — dilutes entity confidence | Authority | Stale details cause hedging or wrong contact info | Low–medium |
| 10 | Thin directory footprint beyond Google/RateMDs/Facebook — limited corroboration for AI systems | Authority | Less cross-source confirmation of your entity | Medium (ongoing) |
| # | Issue | Sub-dimension | Why it hurts | Relative effort |
|---|---|---|---|---|
| 11 | Core Web Vitals not confirmed — likely fine, worth verifying alongside SSR | Technical | Slow/heavy pages can be fetched incompletely | Low |
| 12 | No per-clinician Person schema — bios, once written, should be structured | Schema / E-E-A-T | Leaves expertise unstructured and less verifiable | Low (code) |
| 13 | Bing indexation unconfirmed — gates Copilot visibility | Platform | No Bing presence means no Copilot citations | Low |
Sequenced so each step builds on the last — and front-loaded with the cheapest, highest-leverage moves. (Effort/impact are relative estimates for planning, not commitments, and none of this guarantees a ranking or placement — AI systems decide what to cite. The goal is to make you the most citable, verifiable and machine-legible practice in your category.)
llms.txt file. (Quick win — low effort, immediate.) A curated root-level map of your key pages and core facts (who you are, services, hours, location, the physician-supervised aesthetics line, how to book). Cleanest possible signal, minimal effort, no design dependency. Use the example outline above as a starting template, swap in your real URLs and facts, and place it at your site root.AggregateRating so your 4.3★/~190 reviews become machine-visible; add sameAs to connect your Google, Facebook and RateMDs profiles into one entity; add MedicalClinic-appropriate typing plus Physician markup for the aesthetics line; add per-clinician Person schema. Also add OpeningHoursSpecification (including evening and Saturday hours) and Service/MedicalProcedure entries for your named treatments. This is typically the single fastest meaningful GEO gain available to you. Validate everything with a structured-data testing tool before and after.FAQPage schema. Answer the real questions patients ask — costs and direct-billing, hours and emergencies, what a new-patient visit includes, "is the Botox done by a physician?", aftercare. Write each answer as a self-contained, liftable unit (use the before→after pairs in Section 1 as the model for the right shape). This is the heart of the citability fix and it compounds directly with Recommendation 2. Start with the ten to fifteen highest-intent questions in your two categories and expand from there.Person schema from Recommendation 2 so the credentials are both readable and structured.robots.txt to reputable AI crawlers, and run a Core Web Vitals + Bing-indexation check. Make sure GPTBot, ClaudeBot, PerplexityBot, Google-Extended and Bingbot are deliberately allowed; verify load performance and Bing presence to unlock Copilot. This is mostly a verification pass, but it's a critical one — it's the cheapest place to be silently losing.Sequenced this way, items 1–4 are achievable, low-disruption gains that move citability, schema and E-E-A-T quickly; item 5 is the foundational fix that protects the rest; items 6–7 widen and secure the footprint. None of it requires a website rebuild — it requires making the strong practice you already are legible to the machines now answering your patients' first question. A reasonable way to think about sequencing is two horizons: a fast first wave (1, 2, 6, and the start of 3 and 4) that you could expect to move the needle on the most painful gaps quickly, and a foundational second wave (5, the completion of 3 and 4, and the ongoing work of 7) that makes those gains durable and compounds them across every AI surface.
Methodology: GEO scoring assessed across six weighted sub-dimensions (AI citability, brand authority, content E-E-A-T, technical GEO, schema & structured data, platform optimization) using the R·N·D Presence full-audit battery — site rendering and crawler-access inspection, schema/structured-data parsing, entity-graph and citation-footprint review, and per-platform readiness analysis against current AI-search behaviour — benchmarked to Ontario dental + medical-aesthetics norms (RCDSO, CPSO). Illustrative sample; figures are realistic composites, not guaranteed outcomes.