SEO & GEO Analyzer — Examples
Hands-on walkthroughs with the SEO & GEO Analyzer: audit a page, read and fix a weak score, validate structured data, and check AI readiness.
Back to the overview: SEO & GEO Analyzer · Open the tool: www.jpkc.com/tools/seo/
The manual explains every tab and every score weight in detail. This page complements it with concrete workflows: typical tasks played out step by step, focused on how you read the result and what you do next. The tool's interface is in English, so tab and button names appear here exactly as you'll see them in the live tool.
Example 1: First full audit of a real page
The classic — you want to know where a page stands at all.
- Open the analyzer, paste an absolute URL into the input field (a product or article page, not just the bare domain) and click Analyze.
- You land in the Overview tab automatically. Right at the top sit three badges: the HTTP status with its protocol, SEO: x/100, and GEO: x/100, each with a letter grade. Below them come the hard numbers: HTTP version, page size, TTFB, redirect count, and the key on-page values (title, description, H1, structured data) as traffic-light icons. If there's a yellow notice up there, the page was larger than 5 MB and was only partly analyzed.
- Read the colour first, then the number. Badge and gauge turn green at 80, yellow at 50, red below — plus a letter grade from A to F. A value like SEO: 67/100 (C) means: solid foundation, clear room to improve. What matters isn't the single number but which checks are costing you points.
- For that, look at the Issues & Warnings block (also in Overview) — it lists every SEO check that didn't pass, with its note. Click an entry and you land in the tab where you can investigate the problem, such as Meta Tags or SSL / Security. To prioritise, switch to the SEO Score tab: there the score is broken down by category, every individual check carrying a
pass,partialorfailstatus and the Points column (earned / possible). - Work on the biggest lever first. A missing
Meta Description (70–160 chars)costs up to 8 points, a missingog:image3 — the Points column tells you what's worth doing first. Copy Report takes the complete list with you as plain text, into your ticket system, say.
So a mid-range score isn't a verdict, it's a to-do list. You work through exactly that list in the next examples.
Example 2: Lifting a weak SEO score on purpose
Say the SEO Score sits at yellow and the SEO Score tab flags several checks as fail or partial. Take the usual suspects in order:
Meta Description (70–160 chars)isfail. The page has no description; theMeta Tagstab shows the field empty. Write a 70–160 character description, ship it — and you earn the full 8 points. Any non-empty description outside the 70–160 character range earns 4 points (partial); full marks only come inside the target range.Single H1 Headingispartial. In theMeta Tagstab (the Heading Structure card) you see two<h1>elements. More than one H1 earns only 2 points instead of 5. Turn the second into an<h2>— that often clears theHeading Hierarchycheck at the same time, if no level is skipped any more as a result.Security Headers ≥ 4ispartial. The note in the SEO Score tab tells you how many of the eight checked headers are set (e.g. "2/8 security headers present"). The set is HSTS, CSP, X-Frame-Options, X-Content-Type-Options, Referrer-Policy, Permissions-Policy, Cross-Origin-Opener-Policy and Cross-Origin-Resource-Policy. Which ones are missing, and whether the ones you have are set sensibly, is shown by the Security Headers card in theSSL / Securitytab — it flags things like HSTS withoutincludeSubDomains. Add at least four of them on the server and the check jumps from 1 to 3 points.Canonical URLispartial. The canonical points to a different address, which the note names. For a genuine duplicate that's correct — for the main page it means search engines will index some other URL. Point the canonical at the page's own URL and you get the full 3 points.
Then comes the most important step: analyze the page again. Paste the same URL once more and click Analyze — the gauge moves up, and you see in black and white that the fixes landed. (Example 6 shows how to compare before and after cleanly.)
Example 3: AI-readiness check — can an LLM cite the page?
The GEO Score answers whether generative systems (ChatGPT, Claude, Perplexity, Google AI) can capture and cite your page well. Here's how:
- After the run, switch to the GEO Score tab. It's organised into four categories: Structured Data, AI Discoverability, Content Structure and Machine Readability. Note: one check (Content Signals Declared) always shows as a pure
infonote with no effect on the score; a second one (Markdown via Content Negotiation) appears only in Expert Mode. - Look at AI Discoverability first. The
AI Crawlers Allowedcheck matters here: it tests therobots.txtagainst 16 named AI bots — training crawlers such as GPTBot, ClaudeBot, Google-Extended or CCBot, search crawlers such as OAI-SearchBot, Claude-SearchBot and PerplexityBot, and fetchers acting on behalf of users such as ChatGPT-User or Claude-User. "Good" here means: 0 blocked → the full 3 points. Which bot gets caught by which rule is shown in the Per-Bot Access table in the Robots Analysis tab: the AI bots carry the type badge AI there, and the Matched Rule column names the rule that applies. That's how you spot, for instance, that you're deliberately blocking training (GPTBot, ClaudeBot) while letting AI search through (OAI-SearchBot, Claude-SearchBot) — a legitimate choice that only costs part of the points. - Check
llms.txt Presentandllms.txt Valid Structure. No file means both are missing. "Good" looks like this: a reachable, non-empty and structurally soundllms.txt(5 points together). A present but malformed file earns only partial credit. The llms.txt card in the GEO Score tab lists the individual errors and warnings with line numbers — a missing blockquote summary is just a warning, a missing H1 is an error. - Take a look at the Content Signals card. If you've set
Content-Signaldirectives, you see here where they come from, what each signal means, and whether there are path-scoped rules. If a yellow conflict notice appears, your signals allow AI use while yourrobots.txtblocks AI crawlers — bring one of the two in line with the other. - Under Structured Data the checks are
JSON-LD Present,Schema Variety,FAQ SchemaandAuthor / Organization Schema. The last is your E-E-A-T signal: if your JSON-LD marks up aPerson/Organizationor anauthorfield, the AI knows who to attribute the statement to.
What to do when it's red? That's exactly what the matching generators are for:
- llms.txt Generator — produces a structurally valid
llms.txtthat turns bothllms.txtchecks green directly. - Meta-Tags Generator — delivers clean Open Graph and Twitter data that counts in both the SEO and GEO scores.
Run the page through the analyzer again afterwards and you can read the GEO-score jump directly.
Example 4: Validating structured data and rich-result readiness
You want to know whether your markup is good enough for rich results and AI citations:
- After the run, open the Structured Data tab. It lists every JSON-LD block found as its own card. Explorer unfolds the data as a tree, Raw shows the raw text.
- Check which
@typevalues were detected. The analyzer collects types recursively. For the GEO checkSchema Variety: ≥ 3 distinct types → the full 3 points, 2 → 2, 1 → 1. A page with onlyWebPageleaves potential on the table — add e.g.BreadcrumbList,ArticleandOrganizationand the value climbs. - Watch for two signals in particular: a
FAQPageblock (theFAQ Schemacheck, 3 points — and a direct lever for FAQ rich results) and an author/organization schema (Author / Organization Schema, 3 points). Both appear in the tab as detected blocks when they're built in correctly. - If the tab does not find types you expected, it's usually invalid JSON-LD — the block then shows up as "Invalid JSON" with the parser's error message. Look up the relevant spot in the Source Code tab and fix it in the markup.
- Cross-check: the Schema.org Validator button in the External Validation card opens the analyzed URL straight in validator.schema.org. The analyzer counts types and GEO signals; checking the content against the Schema.org vocabulary is the validator's job.
Example 5: Learning with the demo modes — no live page needed
You don't need a real URL to get to know the analyzer. The Export / Import tab holds three demo buttons that load ready-made example analyses (this tab works without a prior run):
- Perfect (green) — a page where everything fits: HTTPS, six of the eight graded security headers (check passed) plus
Content-Signal, valid SSL, rich meta/OG/Twitter/hreflang data, JSON-LD (WebPage, Organization, FAQPage), a well-formedllms.txt, a clean heading tree, complete landmarks, easy-to-read text. - Broken (red) — everything that can go wrong: HTTP only, a redirect chain with two redirects (301 → 302 → 200), title "Untitled", no description, duplicate H1 plus skipped levels, missing
alttext, empty/spam links,robots.txtwithDisallow: /, a malformedllms.txt, render-blocking resources. - Empty (grey) — a completely blank page,
robots.txtandllms.txtboth 404, all fields null/0.
This is how you learn most: load Perfect first, then Broken and compare the same tabs. In the SEO Score and GEO Score tabs you see, check by check, what makes the difference between green and red. The key point: the demo files contain raw data and extracted values, but no precomputed scores — the values are re-extracted from the HTML on load, and scoring runs client-side on load, exactly like a live analysis. So you're not looking at a mock-up but at the real scoring logic on a known dataset.
Example 6: Comparing before and after cleanly
When you want to prove your fixes (to a client, say), you need a reproducible "before" state. The real mechanism for that is Export / Import:
- Capture the before. Analyze the page and click Download JSON in the Export / Import tab. The file (
seo-analysis-<host>-<date>.json) holds the raw analysis data including the HTML source,robots.txtandllms.txt, plus the values extracted from it — but no frozen score. For the client, save a readable report via HTML Summary as well. - Apply the fixes. Work through the
fail/partialchecks (see examples 2 and 3) and deploy the changes. - Analyze the after. Paste the same URL into the analyzer again and click Analyze.
- Compare. Load the old JSON file back any time via Import JSON → Import & Render — the tool re-evaluates the stored HTML and recomputes the scores exactly as on a live run, without fetching the page again. That gives you the old state and the new one side by side, so you can show: SEO from 67 to 88, GEO from 31 to 74.
Because the export never stores a precomputed score and the tool re-extracts the values from the stored HTML on import, the comparison stays fair — old and new files are graded by the same, current logic. If the tool's grading changes in the meantime, that applies to both files equally.
Example 7: Checking every link and sitemap URL at once (Expert Mode)
You can check individual links in any mode with the yellow check button in the table row — the URL Status Check window shows status, response time and redirects. For a complete link list that gets tedious in standard mode, because there's a pause of about 2.5 seconds between checks. With Expert Mode and a locally running proxy, it's done in one pass:
- Switch on Expert at the top of the tool and analyze the page.
- In the Links tab, the Internal Links card now carries a Check all button. The confirmation dialog lists every unique URL; set Parallel to 2 and Delay to 1 s if you don't want to strain a small server, then click Continue.
- The header keeps count: green for 2xx, yellow for redirects, red for errors. Redirects are often the real find — internal links still pointing to
http://or to old paths cost a hop on every click. - Export the result via Download CSV. The file contains URL, Final URL, Status, Content-Type, the number and chain of redirects, and the response time — a ready-made work list for your editorial team.
- The same check for the whole site: in the Robots Analysis tab, Crawl Sitemaps loads every sitemap declared in
robots.txt, including child sitemaps, and hands the collected URLs to the same batch check. If there's noSitemap:line, Discover Sitemap looks in the usual places such as/sitemap.xmlor/wp-sitemap.xml.
Check Internal Pages in the Structured Data tab works the same way: it loads every internally linked page and summarizes which JSON-LD types occur and how often — handy for seeing whether your Article or BreadcrumbList markup really reaches every page. Each page can be expanded in the result list.
Going deeper: the overview for the big picture, the manual for every score weight in detail. You can try all of it directly in the tool.