Methodology
Last updated: August 25, 2026
Every number in a myGEOscore report comes from a rule you can read on this page: what we fetch, how a check becomes a score, how the score becomes a grade, and where the method stops being reliable.
The weights, the grade bands and the factor counts below are read from the scoring code when this page is built, so they cannot drift from what the analyzer does.
What we analyse
We analyse one URL at a time: the page you submit, not your whole domain. We request it the way an AI crawler would, parse what comes back, and run 51 checks grouped into seven categories.
What the crawl actually reads:
- The HTML served at your URL, following redirects
- Your robots.txt, your sitemap and your llms.txt, where they exist
- The response status, the response headers and how long the page took to answer
- On the paid report, a headless browser render, to see how much of the page survives without JavaScript
We only read pages that are publicly reachable. Anything behind a login, a paywall or an IP allowlist cannot be analysed, and we say so rather than score it as an empty page.
The seven categories
Every factor belongs to exactly one category. The counts come from the live factor registry.
- Content Structure & Extractability11 factors
- Whether the page leads with an answer, uses a clean heading hierarchy, phrases headings the way people ask questions, and goes deep enough to be worth quoting.
- Structured Data & Schema8 factors
- Whether structured data is present, valid, and of the type the page actually is. Schema is how a machine learns what your page claims to be.
- Authority & Trust (E-E-A-T)9 factors
- The signals a reader or a model uses to decide whether to trust the page: a named author, credentials, dates, outbound links to sources that hold up.
- Fact Density & Citability5 factors
- How quotable the page is. Concrete facts, numbers, definitions, comparisons and attributed claims, rather than paragraphs with nothing extractable in them.
- Technical AI-Readiness11 factors
- Whether an AI crawler can reach and read the page at all: status codes, canonical tags, rendering, crawl rules and speed.
- Brand Entity & Mentions4 factors
- Whether the page makes it obvious which entity is speaking, and names it consistently enough for a model to connect the page to the brand.
- AI Platform Visibility3 factors
- Whether ChatGPT, Perplexity and Google cite the page today, checked live against the engines.
How one factor is scored
Every factor returns a score from 0 to 10 and one of four statuses: pass, partial, fail, or error. The rules are fixed, so the same page checked twice returns the same factor scores. The citation checks are the exception, because they query live engines and engines change their minds.
A factor reports what it found rather than what it assumed: the heading it read, the schema type it parsed, the publication date it could not locate.
Each factor has a guide of its own with the rule it applies and how to satisfy it.
Browse the 51 factor guidesFrom factors to a score out of 100
- Each factor scores 0 to 10.
- A category score is the average of the factors scored inside it, placed on a 0 to 100 scale.
- Category scores are combined using weights that depend on the type of page. A category with no scored factor drops out, and the remaining weights are renormalised so they still add up to a whole.
- The result is rounded to one decimal and mapped to a grade.
Because the weights are renormalised instead of left with holes in them, a page that legitimately has nothing to score in a category is not punished for it.
Category weights by page type
A homepage has no author byline and a category listing has no original research, so one weighting cannot fit every page. We classify the page first, then apply that page type's weights. This is the table the scorer uses.
| Category | Homepage | Article | Product page | Listing page | Trust page |
|---|---|---|---|---|---|
| Content Structure & Extractability | 15% | 25% | 20% | 15% | 20% |
| Structured Data & Schema | 20% | 15% | 15% | 20% | 10% |
| Authority & Trust (E-E-A-T) | 5% | 25% | 10% | 10% | 25% |
| Fact Density & Citability | 10% | 20% | 15% | 10% | 10% |
| Technical AI-Readiness | 25% | 10% | 20% | 25% | 15% |
| Brand Entity & Mentions | 25% | 5% | 20% | 20% | 20% |
| AI Platform Visibility | 0% | 0% | 0% | 0% | 0% |
AI visibility carries a weight of 0% under every page type today. The three engine checks are reported on their own, beside the score rather than inside it, because being cited on a given day is evidence about how an engine behaved that day, not a property of your page. They move the grade in neither direction.
How the page type is decided
Classification runs before scoring and stops at the first rule that matches:
- The root of a site is a homepage, unless its structured data declares a blog or a collection.
- Otherwise the URL path decides: /about, /contact or /faq is a trust page, /category or /tag is a listing, /blog or a dated path is an article, /pricing or /product is a product page.
- If the path says nothing, the structured data decides: an Article type, a Product, an AboutPage, a ContactPage, an FAQPage or a CollectionPage.
- Failing that, a visible byline on a page of 800 words or more reads as an article.
- With no signal at all we fall back to a product page, at low confidence, and say so in the report.
Your report names the type we picked and the signals that led there. If the type is wrong then the weights are wrong with it, so it is the first thing to check before arguing with the score.
Grades
Grade bands were recalibrated in April 2026 against a curated set of real pages, after the first bands put competently built pages in the F range. These are the current bands.
| Grade | Score | What it means |
|---|---|---|
| A+ | 85 to 100 | Little left to fix. The page is structured, attributed and machine-readable throughout. |
| A | 75 to 84.9 | Strong, with a few specific gaps, usually in schema or in attribution. |
| B | 62 to 74.9 | A solid foundation with real gaps. This is where most well-built pages land before any GEO work. |
| C | 50 to 61.9 | Readable but not extractable. Structure and evidence are thin enough to cost you citations. |
| D | 40 to 49.9 | An engine can reach the page and then struggles to use it. |
| F | 0 to 39.9 | Something fundamental is missing or broken, usually crawlability, structure or content depth. |
What we measure and what we infer
Measured directly, with the page in hand:
- The heading structure, the word count and the link graph of the page
- Structured data: which schemas are present, whether they parse, whether they match what the page is
- Meta tags, canonical tags and language alternates
- robots.txt rules, the sitemap, llms.txt, status codes and response time
- What the page looks like once rendered, compared with the raw HTML
Inferred by rule, which is a weaker kind of claim:
- Whether a section answers the question its heading asks
- How readable the prose is, and how dense it is in facts and numbers
- Whether a claim is attributed to a source a reader could go and check
- Whether the entity behind the page is named clearly and consistently
Inferred checks are handwritten heuristics: patterns, ratios and thresholds. They are consistent and explainable, and they approximate a judgement a human editor would make in a second. On unusual pages they can be wrong, which is why every factor shows you the evidence it used.
We have no access to any engine's ranking system, no access to your analytics, and no private data from OpenAI, Perplexity or Google. There is no official AI ranking API to call, for us or for anyone else.
The AI citation checks
Three checks ask real engines a real question and look at what they cite. They run on the paid report only, because every query costs money.
The questions we ask
We build up to five search queries out of the page itself: its title, its main heading, its description and its most frequent terms. No model writes them, so the same page produces the same queries. If the page carries too little text to build a query, the checks report that instead of guessing.
ChatGPT
Each query goes to OpenAI's Responses API with web search turned on, and we read the citation annotations attached to the answer. A citation counts when the host of a cited URL is your host or one of its subdomains. Matching happens on the parsed host, so notyoursite.com never counts as yoursite.com. The factor score is the share of queries where you were cited.
Perplexity
Each query goes to Perplexity's sonar model, which returns an answer together with the sources behind it. A source counts when it carries your domain. The score is again the share of queries where you were cited.
Google AI Overviews
Google publishes no API for AI Overviews. We use Gemini with Google Search grounding, the closest public equivalent: the model searches, answers, and returns the sources it grounded the answer on. An appearance counts when your domain shows up in those sources and, for this factor only, when the answer names your brand without linking to it. The score is a count of appearances rather than a share.
Because it is a proxy rather than the feature itself, treat this reading as the softest of the three. In the month-to-month comparison, only a grounded source counts as a citation, so a passing brand mention cannot invent a new citation for you.
What a citation check cannot tell you
- It is one sample at one moment. Engines re-index, re-rank and swap models constantly, and two runs an hour apart can disagree.
- Answers are personalised and localised. What an engine returns to our request is not what it returns to your customer, signed in, in another country, halfway through a conversation.
- Not cited is not proof that you are never cited. It means these queries, at this moment, from this request, did not cite you.
- Five queries derived from your page are not the space of things a person might ask.
- A citation is not a visit. Engines cite pages that nobody clicks.
This is why the result sits beside your score instead of inside it, and why the signal worth acting on is the trend across months rather than any single run.
Factors that do not apply, and checks that failed
- A factor that does not apply to your page type is marked not applicable and left out of the average entirely. It is not scored as a zero.
- A factor whose check failed, because a provider was down, a key was missing or a request timed out, is marked unavailable and also left out. It counts neither for you nor against you, so a bad day on our side cannot lower your grade.
- Two factors are bonus only: an llms.txt file and breadcrumb structured data add points when they are present and cost nothing when they are not.
Free and paid coverage
The free analysis runs 36 of the 51 factors and returns the score, the grade, the seven category scores and five tips. It calls no paid AI provider, which is what makes it free.
The $19 report runs all 51 factors, including the three citation checks, and adds the evidence and the fix for every factor, the action plan, the PDF and 3 monthly re-scans.
Both tiers apply the same rules. A paid score can differ from the free score on the same page because more factors were scored, not because the arithmetic changed.
Monthly re-scans and change detection
A paid report includes 3 re-scans of the same URL, one every 30 days. Each one runs the same analysis and compares it with the run before it.
The comparison reports:
- Score and grade movement, where anything under two points is reported as stable rather than dressed up as a trend
- Movement per category, in the same terms
- Citation transitions per engine: gained, lost, held, or still absent
- The five factors whose change mattered most, ranked by category weight and by the size of the move
- Checks that became unavailable or recovered, kept apart from real regressions
One email per run goes to the address used for the purchase, each with a one-click link to pause or stop the re-scans. There is nothing to log into.
What we store
We store the URL you submitted, the analysis and its factor results, the email address you gave us, and the payment record. Scheduled re-scans are kept alongside the paid analysis they belong to, so the month-to-month comparison keeps working.
Ask us to delete your data and we delete it. Payment records are the exception: accounting rules require us to keep those.
The full detail is in the policies: Privacy policy, Cookie policy
What we do not do
- No customer accounts and no passwords. A report is a private link and an email.
- We do not sell your data, and we do not share your URL or your report with anyone.
- We do not publish, index or resell the pages you ask us to analyse.
- Product analytics only load once you accept them. The cookie policy lists what the site sets and why.
- We do not touch your website. We read it, we never ask for access to it, and we change nothing on it.
- We do not promise a ranking, a citation or a traffic number. Nobody who promises you those can back them up.
Changelog of scoring changes
A score you cannot compare with last month's is worth very little, so every change to the way it is computed is listed here.
March 2026
First scoring release: seven categories, every factor scored 0 to 10, one weighted overall score and a letter grade.
April 2026
Page-type rubrics arrived: weights and applicable factors now depend on whether the page is a homepage, an article, a product page, a listing or a trust page. Grade bands were recalibrated against a curated set of real pages, because the first bands failed pages that deserved a B.
August 2026
The citation checks were rebuilt. ChatGPT moved to the Responses API with web search forced on every query, Perplexity now reads the source list it returns, Google is checked through Gemini with search grounding, and citation matching moved from substring matching to host matching. Factors whose check errors are excluded from the score instead of counted as zero, and monthly re-scans with month-to-month change detection were added.
Found a rule you disagree with? Send the URL and the factor to [email protected]. Rules that turn out to be wrong get changed, and the change lands in this list.
Run it on your own page
The free check applies everything above to one URL, with no card and no account.
Analyze a page