Where you stand against the businesses you're actually competing with
Real competitors, not random domains.
Whether ChatGPT and other AI tools recommend you, or a competitor instead
Real answers from real AI tools, not a guess.
Exactly what to fix first
Ranked by what will actually move the needle, with a step-by-step plan on the higher tiers.
See exactly what we check
Search engines have to find, load, and understand your site before anyone can recommend you. Here's the full crawl, in plain English.
Check
What it means
Why it matters
Status
Can Google find your site?
Whether Google's robot can actually reach and read your pages.
If it can't find a page, that page can never show up in search.
PASS
Is your site actually listed?
Whether your pages are stored in Google's search index.
A page not indexed is invisible, even to people searching your exact business name.
PASS
How fast does it load?
How quickly a real visitor sees your page and can use it (Core Web Vitals).
Slow sites lose visitors before they see your content, and Google ranks them lower.
NEEDS ATTENTION
Does it work well on phones?
Whether your site is easy to use on a phone screen.
Most visitors are on mobile. A broken mobile site loses most of your traffic.
PASS
Does Google understand your pages?
Hidden labels (schema) that tell search engines and AI exactly what a page is.
Missing labels mean AI may describe your business incorrectly, or not at all.
FAILED
Is your site map organized?
A file that lists every page on your site for search engines to find.
A missing or broken sitemap means search engines may miss whole sections of your site.
PASS
Any broken pages or links?
Links or pages on your site that lead nowhere.
Broken links frustrate visitors and waste the trust search engines place in your site.
NEEDS ATTENTION
Is your site secure?
Basic technical protections against common attacks.
Security gaps can get a site flagged or blocked, and hurt visitor trust.
PASS
You don't need to understand this yourself, we explain every issue in plain English. Starter checks the homepage, Standard checks 5 pages, Professional checks up to 20.
What changes
From guessing to knowing
Not a promise about rankings, a promise about clarity. Here's the difference the audit itself makes.
Before the audit
After the audit
Search visibility
You're guessing whether Google can even find you
You know, page by page, in plain English
AI visibility
No idea what ChatGPT or Google's AI is telling people
Tested against real AI answers, with the exact wording
Page speed & technical health
Unmeasured, or buried in a report you can't read
A plain pass / needs attention / failed check, page by page
Competitors
You don't know who you're really up against
Named, with exactly where they beat you
What to do next
No plan, just a list of problems
Ranked by what will move the needle first
Why this matters now
Most businesses haven't checked this yet
This is new. Most businesses aren't checking it yet, which is an edge for the ones who do.
"For a coffee subscription, I'd recommend Trade Coffee or Atlas Coffee Club, both let you pick a roast and delivery schedule…"
Trade CoffeeAtlas Coffee ClubBlue BottleYour business: not mentioned
Process
From URL to report
01
Submit your website
Your URL, and competitors if you want them checked too.
02
We check everything
We check your site and ask real AI tools about your business, the same way a customer would.
03
You get your report
In 2 to 3 working days. A PDF you can print, and a web version built to read on a phone.
04
We can fix it, too
Optional, see below.
Pricing
Pick your depth
Same report at every level, just deeper. Not sure which one? Starter is a quick check, Standard is the full picture, Professional is a deep dive with a plan.
Content quality check: does your content earn trust
Real ChatGPT answers, not just a mention count
AI-readiness score for your site
Professional
Everything in Standard, plus:
Technical & on-page check: 20 pages
Google AI Mode coverage
Claude & Perplexity data
What content to create next, ranked by opportunity
A step-by-step roadmap to fix everything, in order
Already thinking about fixing what we find? Implementation is a separate, individually quoted service; your audit fee is credited 100% toward it if you order within 30 days.
The deliverable
What's actually inside
Most reports tell you something is wrong. This one shows you the evidence, so you can check it yourself.
The exact words the AI used
Not "you were mentioned". The full sentence, the question we asked to get it, and the date we asked. You can retype the question yourself and compare.
Who gets recommended instead of you
Named, and counted. In the sample report one competitor was named in six answers out of six, on searches the business itself sells into.
What people actually ask
The real follow-up questions people type, each one checked against whether your site answers it. That is a content plan, not a complaint.
A prediction, then proof
We read your pages first and predict what AI will do with them. Then we run the searches and show you whether we were right. A guess that survives a real test is worth more than a long list.
Code your developer can paste
Where the fix is code, the report contains the code, ready to use. Nobody has to book a call to find out what you meant.
Every finding, not just the headlines
The report leads with what matters and keeps everything else in a section you open when you want it. Nothing we found gets quietly left out.
See it before you buy it
A report you can actually verify
Every claim is sourced: a real answer, a real page, a real number.
This is the interactive version, the same one you get, so it works on a phone. Yours also arrives as a PDF for printing.
Wildroot ranks 2nd in Portland, and ChatGPT recommends them by name. Ask the same AI for a coffee subscription and it names Trade Coffee, Atlas and Bean Box. Wildroot sells exactly that, and was never mentioned once.
0 of 6
subscription searches where AI mentioned Wildroot
11
times a competitor was named in those same answers
2
Google position locally, the business is working
38
product pages nothing on the site links to
Beyond the diagnosis
Found the problems? We can fix them too.
The audit tells you what's wrong. Implementation is us doing the fix, a separate service, quoted individually once we know what your site needs.
Your audit becomes
Starter audit → Quick Fix package
The technical items from your report, done for you.
Standard audit → Foundation Sprint
Quick Fix, plus content and entity work.
Professional audit → Full Roadmap Execution
Every phase of the roadmap, in order.
How we work
We quote a fixed price before starting
For everything we control, based on your site, not a catalog rate.
No guaranteed rankings or AI mentions
Those depend on Google and AI platforms, not us. We say so before you pay, not in a footnote.
Free re-check, 30 days after delivery
So you can see the before/after yourself.
Have your own developer?
We hand over a spec instead of doing the work, at lower cost.
The easiest way to make an audit look impressive is to quietly fill the gaps. This is what we do instead.
A number we could not collect is marked as missing
Not dropped, and not counted as a zero. If a search returned no data on the day we ran it, that row says "no data", because "we didn't get an answer" and "you weren't mentioned" are different facts.
We tell you when we changed our mind
If a closer look made a problem smaller, the report shows the revised rating and the reason. In the sample, one High becomes Medium after we read the pages properly.
Measured and simulated are never mixed
A speed figure from your real visitors and a figure from a one-off test mean different things. Every number says which one it is, and we lead with the real one whenever it exists.
We say what we did not check
If we read 7 of your 22 articles, the report says 7 of 22. If a tool we tested is the AI model behind an app rather than the app itself, it says that too.
Every result in your report is measured. Where we summarize with a score, we label it as ours, never as a number from Google.
Real answers from ChatGPT, Gemini, and Google
Plus the AI models behind Claude and Perplexity
Your data is never shared with anyone else
Questions
Before you ask
Why do I need this on top of a regular SEO check?
A regular SEO check only looks at Google. This audit also checks whether AI tools like ChatGPT and Claude mention you, something a regular check never touches.
How do you know what AI is saying about me?
We ask ChatGPT and other AI tools real questions, the way a customer would. For Claude and Perplexity we test the AI model behind them, not the exact app, and we label it that way in your report.
How long does the audit take?
From 2 to 3 working days. Starter is usually quickest, Professional takes the longest because it covers more platforms and more pages. If yours is going to take longer than that, we tell you before you pay.
What do I actually receive?
Two things. A PDF laid out for printing, and an interactive web version that works properly on a phone, with the detailed findings folded away until you want them. Both are yours to keep and to pass to whoever does the work.
Which tier is right for me?
Starter if you want a fast diagnostic. Standard if you want competitor context and real ChatGPT answers. Professional if you want AI Mode, Claude/Perplexity data, and a phased plan to fix it.
Do you guarantee rankings or AI mentions?
No, and we're upfront about it. Rankings and AI mentions depend on Google and AI, not us. We do guarantee our technical fixes are done correctly.
What happens after I get the report? Can you help implement the fixes?
Yes, as a separate, individually quoted service, not included in the audit price. Your audit fee is credited 100% toward it if you order within 30 days.
Is my data, or my competitors' data, kept private?
Yes. Your report is yours alone. We don't share client data across accounts.
Get in touch
Get started, or ask us anything
Tell us a bit about your site and what you need. We reply within one business day.
Find out if customers are finding you, or your competitor.
A small-batch coffee roaster in Portland, Oregon, with a café and roastery on site, an online shop, and a monthly subscription. This audit covers site health, content quality, competitor standing, and how the site performs in real AI search answers (ChatGPT and Google's AI Overviews).
Domain wildrootcoffee.comPages found 74 crawled (112 declared)Coffee pages 41Real AI searches run 9
This is a sample. Wildroot Coffee Roasters is a fictional business, written to show the exact format, depth and wording of a real Standard audit. Every figure here is invented for the example. A real report contains only measured data, and says so wherever a number could not be collected. Two notes carried over from the real format: Perplexity figures come from the underlying AI model rather than the Perplexity app, labelled that way throughout, and one search term's AI Overview did not render on the day of collection and is marked as no data rather than counted as an absence.
54/100
Website health
Content quality 61
AI search readiness 29
Technical health 68
Site speed (mobile) 44
These scores are our own summary of the checks in this report, each out of 100. They are not a metric published by Google or any AI company.
Executive summary
You are found by people who already know to look in Portland, and invisible to everyone else.
Wildroot ranks in the top three for the searches that bring people to the café, and a real ChatGPT search we ran for "best coffee roaster portland" named the business directly. For the subscription, the part of the business that does not depend on being in Portland, six real AI searches returned six answers naming Trade Coffee, Atlas Coffee Club and Bean Box. None of them mentioned Wildroot.
The gap is not reputation. It is that the subscription cannot be read.
01The site's crawler rules block OpenAI's crawler. The file that tells automated visitors what they may read (robots.txt) disallows GPTBot and CCBot. This looks like a hosting-platform default that was never reviewed, not a decision. It does not block ChatGPT's live web search, which uses a different crawler, which is why Portland searches still find the site. It does keep Wildroot out of the material ChatGPT draws on when it answers from general knowledge instead of searching, and that is the more common path for a broad question like "best coffee subscription."
02The subscription page never states a price in words. The price, the shipping threshold and the cancellation terms exist only inside the checkout widget, which loads by script after the page arrives. "How much does a coffee subscription cost" is the single most repeated question in the real search data for this market, and the page built to answer it does not answer it in any form a search engine or an AI tool can read.
0338 of 41 individual coffee pages have no link pointing to them. The shop page filters its results by script, so the individual coffee pages exist and work if you know the exact address, but nothing on the site leads a visitor, or a search engine, to most of them. These are the best-written pages on the site.
None of this is a rebuild. The first fix is one line in one file. The second is a paragraph of plain text. The third is a list of links. In that order, and each one is addressed in the plan at the end of this report.
Worth being clear about what is already working, because it is the thing to protect. Wildroot holds position 2 for "coffee roaster portland" and is named by ChatGPT on local searches, which no amount of budget buys quickly. That standing comes from the café and origin pages, which state their facts in plain readable text. The subscription pages do not, and Trade Coffee is currently taking every answer that Wildroot's own product could have answered.
0 of 6
real subscription searches where any AI system mentioned Wildroot
11
times Trade Coffee was named across those same six answers
2
Google position for "coffee roaster portland", the local business is working
38
coffee pages with no link pointing to them from anywhere on the site
Cross-referenced
Top issues, ranked
The highest-impact items across every check we ran. Full evidence for all of them is in All findings.
Issue
Severity
Why it matters
Crawler rules block GPTBot and CCBot
Critical
Two lines in one file currently exclude the site from the material ChatGPT reads when it is not running a live search. This is the cheapest fix in the report and the one with the widest reach.
The subscription page states no price, shipping or cancellation terms in readable text
Critical
These are the exact facts an AI answer quotes when it recommends a subscription. Every competitor named in our test answers states all three in the first paragraph of their page.
38 of 41 coffee pages have no internal link pointing to them
Critical
These pages carry the site's best writing and its only per-product detail. Pages nothing links to get found and re-checked less often by search engines, even when they are listed in the sitemap file.
Homepage and shop page are blank in the raw page a non-browser program receives
High
Several AI search tools do not run a page's on-screen script before reading it. The two pages that describe what the business sells are the two they cannot read.
Main content takes 4.1 seconds to appear for real visitors on a phone
High
Measured from real visits, not a simulation. 18 hero images ship at full camera resolution, the largest at 4.2 MB, none in a modern image format.
No sitewide identity record (technically, "Organization" data) and no local business record on the café page
High
A physical café with no machine-readable address, hours or phone number is giving away the one advantage an online-only competitor cannot copy.
No page covers gift subscriptions
High
9,900 monthly searches for "coffee subscription gift" alone, and both leading competitors run a dedicated page for it. Wildroot sells gift subscriptions inside the checkout widget with no page describing them.
Coffee-page product data is missing price and availability
Medium
The machine-readable product record exists and is otherwise correct, so this is a fill-in-the-fields job rather than new work.
Part 1 / Context
The business & its market
Wildroot Coffee Roasters roasts single-origin and blended coffee in small batches at its own roastery in Portland, Oregon, sells it through a café on the same site, an online shop of 41 individual coffees, and a monthly subscription. The blog carries brew guides and origin write-ups. Revenue comes from three places that behave completely differently in search: the café (local, and working), the shop (transactional, partly working), and the subscription (national, and effectively absent from the market).
How we chose which competitors to compare against. The standard automated "who are your competitors" data returned Instagram and a marketplace listing page, sites that appear in the same search results but are not real competitors. We checked and excluded those. Local Portland roasters were also excluded: they compete for the café, which is the part of the business already performing, and they do not compete for the subscription at all. The real competitive pressure on the part of the business that is not working comes from three national subscription brands:
Trade Coffee, a marketplace that ships coffee from many roasters and dominates the general subscription searches. Atlas Coffee Club, a single-brand subscription built around a different country each month. Bean Box, a Seattle sampler-and-subscription business, and the closest structural match to Wildroot: a regional roaster-led brand that has successfully reached a national subscription audience.
Bean Box is the useful comparison in this report. It started from the same position Wildroot is in now, a city-known roaster with a subscription nobody outside the city could find, and it is now named in AI answers alongside brands with a hundred times its link profile. What changed was not scale.
Part 2 / Differentiator
Content quality & trust
A cheaper, narrower check cannot tell you this. It requires reading the full text of every page on the site, not just a page's title.
Score: 61 of 100. The writing on this site is genuinely good, which is not the usual finding. The 41 individual coffee pages carry real detail: producer name, altitude, process, harvest window, roast date and honest tasting notes, written by someone who clearly knows the subject. The origin write-ups on the blog are better than anything the three competitors publish. The problem is entirely one of placement: the best content sits on the pages nothing links to, and the pages that carry the commercial weight carry almost no text at all.
The subscription page runs 116 words, none of which state what the subscription costs, how often it ships, whether shipping is free, or how to cancel. All four facts exist inside the checkout widget. A visitor finds them in about two clicks. A search engine, or an AI tool, does not find them at all. This is the single highest-value writing job on the site and it is roughly one afternoon of work.
Trust signals are mixed. The roastery address, business hours and a real phone number appear in the page footer, and the roast-date-on-every-bag policy is stated plainly and is a genuine differentiator. But the brew guides, which give brewing ratios and water-temperature guidance, carry no byline at all, while the competitors' equivalent guides are signed by named, licensed or certified people. There is no returns or freshness-guarantee page, which every competitor has and which buyers of a recurring product look for.
Word count against our own minimum bar
Page type
Words
Our minimum
Result
Homepage
540
500
Pass
Subscription page
116
800
Fail · Critical
Shop page
88
500
Fail · High
Individual coffee pages (each)
410–620
300
Pass
Origin write-ups (4 of 22 sampled)
1,400–2,100
1,200
Pass
Brew guides (3 of 22 sampled)
720–950
1,200
Fail · Medium
Café page
302
300
Pass
Part 2 / Differentiator
Competitors
The gap is not spread evenly. On searches that name a place, Wildroot competes and often wins. On searches that describe the product, Wildroot does not appear at all:
Search term
Monthly searches
Wildroot
Trade Coffee
Atlas Coffee Club
coffee subscription
22,200
84
2
4
best coffee subscription
18,100
Not ranked
3
6
coffee subscription gift
9,900
Not ranked
5
2
best coffee beans for espresso
8,100
61
11
Not ranked
single origin coffee
5,400
47
14
22
coffee subscription free shipping
1,900
Not ranked
4
9
coffee roaster portland
2,900
2
Not ranked
Not ranked
best coffee shop portland
6,600
7
Not ranked
Not ranked
Read the bottom two rows against the top six. The same site, the same writing, the same brand. Where the search names Portland, Wildroot beats national brands with far larger budgets. Where it does not, Wildroot is absent. That is the whole report in one table, and it is good news: the problem is not that the business cannot compete, it is that on six of these eight terms it is not currently entered.
Who links in, and how that compares
Site
Sites linking in
Total links
Authority rank
Wildroot Coffee Roasters
47
128
61
Trade Coffee
4,812
96,204
372
Atlas Coffee Club
2,140
41,558
331
Bean Box
1,003
19,470
288
Wildroot's link profile is thin, and closing that gap by ordinary means would take years. It is worth saying plainly that this is not the constraint right now. Bean Box is cited in AI answers with a fifth of Trade Coffee's links, and Wildroot already outranks all three on Portland searches with a fiftieth of them. The three fixes in this report do not require a single new link. A spam-risk check on the existing 47 sites came back clean, which is worth knowing before any deliberate link work starts later.
Part 2 / Differentiator
Real AI answers
9 real customer-style questions, run as live searches against ChatGPT and Google's AI Overviews. Ground truth, not a prediction.
2 of 9
real ChatGPT test searches cited wildrootcoffee.com directly, and both named Portland
ChatGPT, real answer cited Wildroot, searches naming Portland2 / 3
ChatGPT, real answer cited Wildroot, subscription searches0 / 6
Google AI Overview present at all8 / 9
Google AI Overview cited Wildroot3 / 8
"For a monthly coffee subscription, I'd recommend Trade Coffee if you want variety across a lot of different roasters, or Atlas Coffee Club if you'd rather get a different country each month. Both let you pick a roast level and a delivery schedule, and both ship free."Real ChatGPT search, "best coffee subscription", 23 August 2026
Wildroot sells exactly this. You pick the roast, you pick the schedule, and shipping is free over $35. Not one of those three facts is stated on the site in a sentence either system can read, so the answer is assembled from the sites that do state them.
"In Portland, Wildroot Coffee Roasters is well regarded for single-origin lots, and they roast in small batches at the café on Belmont."Real ChatGPT search, "best coffee roaster portland", 23 August 2026
The same system, the same week, describing the same business accurately and warmly. The difference between the two answers is not how well Wildroot is known. It is that the café page states its facts in plain text and the subscription page does not.
Who gets named instead, across the six subscription searches
Trade Coffee
Named in 6 of 6
Atlas Coffee Club
Named in 5 of 6
Bean Box
Named in 4 of 6
Wildroot Coffee Roasters
Named in 0 of 6
Bean Box is the one to watch. It is a regional roaster with a link profile a fifth of Trade Coffee's, and it is named in two thirds of these answers. Whatever is separating Wildroot from that outcome, it is not size.
Full results by search term
Search term
Google AI Overview
ChatGPT real answer
coffee subscription
Present, does not cite Wildroot
Not cited
best coffee subscription
Present, does not cite Wildroot
Not cited
coffee subscription gift
Present, does not cite Wildroot
Not cited
how much does a coffee subscription cost
Present, does not cite Wildroot
Not cited
coffee subscription free shipping
No data, did not render on collection
Not cited
single origin coffee delivered monthly
Present, does not cite Wildroot
Not cited
coffee roaster portland
Present, cites Wildroot
Cited, quoted directly
where to buy fresh roasted coffee portland
Present, cites Wildroot
Cited
best coffee shop portland
Present, mentions Wildroot among 6 sources
Not cited
Scope of this dataset. "Cited" above means a specific answer named or linked the domain as a source, which is a different event from the brand simply appearing somewhere in a platform's index. Google AI Overview and ChatGPT figures are real consumer-surface answers to the nine questions listed. Perplexity was checked separately against the underlying AI model rather than the Perplexity app, so it is reported in All Findings and not counted in the figures above.
Predicted, then confirmed. Our technical check predicted, from the page structure alone and before any AI search was run, that the subscription page would be unusable as a source: its only statement of price, shipping and cancellation terms lives inside a script-loaded widget, and the crawler rules block OpenAI's crawler outright. The live results match exactly. Zero of six subscription searches cited Wildroot, while the two pages that do state their facts in plain readable text, the café page and the roastery page, are precisely the ones cited on the Portland searches. A prediction confirmed by real results is the strongest kind of finding in this report, and it means the fix is known rather than guessed.
From real search data
What people actually ask
Follow-up questions and related searches Google records against these exact terms, checked against what the site publishes today.
Theme
Asks
Does the site answer it?
How much does it cost, and what am I committing to
12+
No page states a price in readable text. The most repeated question across the whole dataset, and the subscription page answers it only inside the checkout widget.
Can I choose the roast, the grind, or the origin
7
Partly. All three choices exist, inside the checkout widget only. No page describes them.
How often does it ship, can I skip or pause a month
6
No page covers this. Both leading competitors answer it in their first paragraph.
How fresh is it, when was it roasted
5
Yes, and better than any competitor. The roast date is on every coffee page. Those are the 38 pages nothing links to.
Which beans suit espresso versus filter
5
Partly. Tasting notes cover it per coffee; no page compares across the range.
Buying a subscription as a gift
4
No page covers this, though the checkout supports it. 9,900 monthly searches, and a dedicated competitor page for each.
Five of the six themes are questions about terms rather than about coffee. Wildroot answers the coffee questions better than its competitors and the terms questions not at all, which is a precise description of why it wins Portland searches and loses subscription ones.
Part 3 / Foundation
AI search readiness
Our own readiness score: 29 of 100. This is our internal checklist score, not a metric published by Google or any AI company.
Two things drive the score down, and the first is unusual enough to be worth stating carefully. The site's crawler rules file disallows GPTBot and CCBot by name. GPTBot is OpenAI's crawler; CCBot collects the open web archive that many AI systems are built from. Neither block affects ChatGPT's live web search, which identifies itself differently, and that distinction is exactly why the Portland searches still find the site while the general-knowledge answers do not. The block pattern matches a well-known hosting-platform default, so the likeliest explanation is that it was inherited rather than chosen. Confirming that intent is the first item in the action plan, because if the block was deliberate, everything else in this report about AI answers changes.
The second is page rendering. The homepage and the shop page return an empty shell in the raw page, with content appearing only after on-screen script runs. Individual coffee pages, origin write-ups and the café page are built correctly and show their content immediately, which is why they are the pages that get cited. There is no llms.txt file, a small optional file some AI tools read; it is worth adding once the two issues above are fixed, and it is ignored by Google either way.
Part 3 / Foundation
Website health
Score: 68 of 100. The fundamentals are mostly sound: a secure connection, a clean single-step redirect from the www address to the main one, correct canonical tags (the technical signal that tells search engines which address is the "real" one) on every page, a proper not-found response on mistyped addresses, and a mobile-responsive layout with no broken links found.
Check
Result
Detail
Crawler rules (robots.txt)
Fail · Critical
Disallows GPTBot and CCBot by name. Correctly points to the sitemap and is otherwise clean.
Coffee pages with no internal link pointing to them
Fail · Critical
38 of 41, see Top Issues.
Homepage and shop page
Fail · High
Blank in the raw page until on-screen script runs; drives both the AI-readiness gap and part of the speed result below.
Sitemap file (site map for search engines)
Fail · Medium
Valid and well-formed, 112 addresses declared, but 6 published pages are missing from it.
Structured data (machine-readable page facts)
Fail · Medium
Product data present on coffee pages but missing price and availability; no sitewide identity record; no local business record on the café page. See All Findings.
Coffee, origin and café pages
Pass
Properly built to show full content immediately, the correct pattern and the one to copy onto the homepage and shop.
Real-visitor speed data was available for this site, so the headline number below is measured from actual visits over the past 28 days rather than simulated. On a phone, the main content takes 4.1 seconds to appear against Google's 2.5-second threshold for a good experience. Responsiveness to taps sits at 210 milliseconds, just above the 200-millisecond threshold. Layout stability is good at 0.02 and needs no work. A separate lab test (a simulated, one-off measurement, useful for naming the cause but not a fact about real visitors) scored 44 out of 100 on mobile and pointed at the images: 18 hero and origin photographs ship at full camera resolution, the largest at 4.2 MB, and none are served in a modern image format. That single change is most of the gap.
Phone load time for real visitors, against Google's own "good" cutoff
Measured from real visits over 28 days, not a simulation. About 1.6 seconds slower than Google's threshold for a good experience, and the images account for most of it.
Part 3 / Foundation
Search rankings
Wildroot ranks for 214 search terms in total: 3 in the very top spot, 9 in positions 2 to 3, and 22 in positions 4 to 10.
Where the site's 214 rankings actually sit
About one in six rankings reaches the first page. Every one of those 34 either contains the brand name or names Portland.
A grounding fact worth stating plainly: all 34 first-page rankings either contain the brand name or contain the word "Portland." There is not one first-page ranking for a term that describes the product without naming the place. That is the same finding as the AI section, arriving from completely separate data, which is the strongest signal in this report that the diagnosis is right.
Buyer intent on the subscription terms comes back "commercial" across the board, meaning people searching them are actively comparing options rather than reading casually. Those are the terms Wildroot is not entered for, and they are the ones worth the work.
Declared versus published
What the sitemap leaves out
The sitemap file is how a site tells search engines what it publishes. We compared it against what the site actually serves and what a normal crawl can actually reach.
112
addresses declared in the sitemap file
74
pages our crawl could actually reach by following links
6
real pages published but missing from the sitemap file
44
declared pages with no link pointing to them anywhere on the site
Missing from the sitemap (6 pages): the wholesale enquiry page, the subscription FAQ page, and four origin write-ups published in the last month. The four recent posts point to a sitemap that is generated on deploy rather than on publish, which is worth fixing at the source rather than by hand.
In the sitemap but unreachable by following links (44 pages): 38 individual coffee pages, 5 older origin write-ups, and the subscription FAQ page. We confirmed the cause directly: the shop page renders its product grid by script and produces no links in its raw output, individual coffee pages carry no links to other coffee pages, and there is no browsable index by origin, roast or process. This is the evidence behind the report's third top issue.
Coffee pages: declared in the sitemap, against reachable by following a link
The three reachable pages are the three featured on the homepage. The other 38 exist and work if you know the exact address, but nothing else on the site leads a visitor, or a search engine, to find them.
Full evidence, by check
All findings
Every finding from every check we ran, in full. Collapsed by default, expand what is relevant to your team.
Website health (technical) 68/100 (8 checks)
Checked: crawler rules, sitemap, security, redirects, not-found handling, mobile-friendliness, page-load architecture, and the internal-linking pattern behind the orphaned coffee pages. Checked via direct inspection of the live site.
Finding
Severity
Description
Recommendation
Crawler rules block GPTBot and CCBot
Critical
robots.txt contains explicit Disallow rules for GPTBot and CCBot. Pattern matches a common hosting-platform default rather than a hand-written rule.
Confirm the block was not deliberate, then remove both rules. Add explicit Allow rules for GPTBot, OAI-SearchBot, ClaudeBot, PerplexityBot and Google-Extended so the intent is visible to whoever reads the file next.
38 of 41 coffee pages have no internal link pointing to them
Critical
The shop page renders its product grid by script and produces no links in its raw output. Individual coffee pages carry no links to other coffee pages. No browsable index by origin, roast or process exists.
Render a plain, crawlable list of all 41 coffees on the shop page beneath the filter widget, and add a "more from this origin" module to every coffee page.
Homepage and shop page blank until script runs
High
Both return an empty shell in the raw page. Coffee, origin and café pages are built correctly and return full content immediately.
Add server-side rendering or static pre-rendering to these two routes, following the pattern already working on the coffee and origin templates.
44 of 112 sitemap addresses unreachable by following links
High
38 coffee pages, 5 older origin write-ups and the subscription FAQ page have no internal-link path.
See the internal-linking fix above; sitemap inclusion alone is not enough.
6 real pages missing from the sitemap
Medium
The wholesale enquiry page, the subscription FAQ page, and four origin write-ups published in the last month.
The four recent posts indicate the sitemap regenerates on deploy rather than on publish. Fix at the generator rather than adding entries by hand.
No automatic re-index ping (IndexNow)
Low
No evidence of IndexNow, a free protocol for near-instant re-checking after a content change.
Worth adding once the internal-linking fix ships, to speed up re-discovery of the 38 pages.
Security, redirects and not-found handling
Pass
Secure connection with modern security headers, clean single-step www redirect, correct canonical tags throughout, proper not-found response on mistyped addresses, no broken links found.
No action needed.
Mobile layout
Pass
Responsive across the sampled templates; no horizontal scrolling or tap-target problems found.
No action needed.
Structured data (schema) (5 checks)
Checked: machine-readable page data on coffee pages, origin write-ups, the café page and the homepage, including a forced full-render check to rule out timing issues. Ready-to-use code for each fix is included below.
Finding
Severity
Description
Recommendation
No sitewide brand identity data
High
The homepage carries no machine-readable identity record even after a full render check, confirming a real gap rather than a timing issue.
Add a single Organization and WebSite data block to the homepage. See the snippet below.
No local business data on the café page
High
Address, opening hours and phone number appear in the page footer as visible text but exist in no machine-readable form anywhere on the site.
Add a CafeOrCoffeeShop record to the café page. This is the one signal an online-only competitor structurally cannot match.
Coffee-page product data missing price and availability
Medium
The product record exists on all 41 coffee pages with name, description, image and brand correctly filled, but the price and stock-status fields are empty.
Backfill both fields from the existing shop data. The record is otherwise correct, so this is a fill-in-the-fields job.
No breadcrumb data on coffee or origin pages
Medium
Present on the café page only.
Reuse the existing café-page pattern on the other two templates.
Origin write-up data is complete and correct
Pass
Article records carry headline, date published, date modified and image. Author is listed as the business rather than a person, consistent with the byline finding in Content quality.
No action on the data itself; see the named-author recommendation in Content quality.
Ready to implement. Paste into the homepage <head>, replacing the placeholder values:
Checked: thin content, named expertise, freshness, commercial-terms coverage, and how quotable the content is to an AI system, across the site's full published text.
Finding
Severity
Description
Recommendation
Subscription page states no price, shipping or cancellation terms in readable text
Critical
116 words total. All four commercial facts exist only inside the script-loaded checkout widget.
Write the price, the delivery frequency options, the free-shipping threshold and the cancellation terms as plain text above the widget. This is the highest-value writing job on the site.
No page covers gift subscriptions
High
The checkout supports gifting, but no page describes it. 9,900 monthly searches for "coffee subscription gift"; both leading competitors run a dedicated page.
Build a gift subscription page covering delivery timing, what the recipient receives, and how to schedule a start date.
Shop page is thin
High
88 words of template text above a script-rendered product grid.
Add real introductory text covering the range, the roast profiles and the roast-date policy, and render the product list in plain HTML.
Brew guides carry no byline
Medium
Guides give brewing ratios and water-temperature guidance with no named author, while competitor equivalents are signed by named certified people.
Add a named roaster byline with a one-line credential. The expertise plainly exists; it is just not visible.
No returns or freshness-guarantee page
Medium
No page states what happens if an order arrives stale or damaged. Every competitor has one, and buyers of a recurring product look for it.
Publish a short freshness and returns page and link it from the subscription and shop pages.
Brew guides fall short of the length bar
Medium (revised)
720 to 950 words against a 1,200-word bar. Revised down from an initial High: on reading them in full, these are dense, well-structured guides that are short because they are efficient, not because they are thin. The gap against competitors is the missing byline, not the word count.
Treat as low priority. Add the byline first and re-assess.
Individual coffee pages are the best content on the site
Pass
410 to 620 words each, with producer name, altitude, process, harvest window, roast date and genuine tasting notes. Better per-product detail than any of the three competitors.
No content work needed. Fix the linking, see Website health.
Roast-date policy is a real differentiator
Pass
Every bag carries a roast date and the policy is stated plainly. This directly answers one of the six question themes in real search data.
Surface it on the subscription and shop pages, where it currently does not appear.
Sampled 7 of 22 blog posts
Info
This review read 7 of the 22 posts the site publishes, chosen across both post types. A methodology note, not a defect.
A follow-up pass sampling the remaining posts would sharpen this section.
AI search readiness 29/100 (6 checks, our own heuristic)
Checked: whether AI crawlers can reach and read the site at all, separate from measured AI-answer results (see Real AI answers, above). This is our own internal checklist, not a published platform metric.
Finding
Severity
Description
Recommendation
Crawler rules block GPTBot and CCBot
Critical
Cross-reference with Website health. This is a Discoverability finding: the question is not whether the site is good enough to cite, it is whether the crawler is permitted to read it at all.
See the crawler-rules fix. One line, widest reach of anything in this report.
Commercial terms unreadable to any AI tool
Critical
Price, frequency, shipping and cancellation exist only inside a script-loaded widget. Confirmed against the live ChatGPT results: 0 of 6 subscription searches cited the site.
See the subscription-page writing fix.
Homepage and shop blank to non-rendering crawlers
High
A direct, no-browser fetch returns no visible text. Several AI crawlers are documented as not running on-screen script when they fetch a page.
Add server-side rendering to both routes.
Perplexity check inconclusive
Medium
Perplexity was checked against the underlying AI model rather than the Perplexity app, which is a different product and not a reliable stand-in. That check did not surface the brand. We are reporting this as inconclusive rather than as an absence, because the two are not the same measurement.
If Perplexity specifically matters commercially, a live consumer-surface test of Perplexity is available as an add-on.
No llms.txt file
Low
A small optional file some AI tools read. Ignored by Google.
Worth adding after the two critical fixes above, not before.
Already cited by ChatGPT and Google's AI on Portland searches
Positive
2 of 3 Portland searches cited the site directly, from pages that state their facts in plain text. See Real AI answers.
This is the working pattern. Copy it onto the subscription and shop pages.
Page speed & images 44/100 (4 checks)
Checked: real-visitor speed data over the past 28 days (authoritative), a one-off lab measurement (diagnostic only), and every image on the sampled pages.
Finding
Severity
Description
Recommendation
Main content takes 4.1 seconds on a phone
High
Measured from real visits over 28 days, against Google's 2.5-second threshold for a good experience.
Fix the images first, then re-measure before doing anything else. The image work alone is expected to close most of this.
18 images ship at full camera resolution
High
Largest single image is 4.2 MB. None served in a modern format. Total image weight on the homepage is 11.6 MB.
Resize to the largest size actually displayed, convert to a modern format, and serve responsive sizes.
Tap responsiveness marginally above threshold
Medium
210 milliseconds against a 200-millisecond threshold, from real visits. Marginal rather than severe.
Likely to resolve alongside the image and rendering work. Re-measure rather than optimising directly.
Layout stability
Pass
0.02 from real visits, comfortably inside the good band. Nothing shifts as the page loads.
No action needed.
Prioritized by impact, confidence and effort
Action plan
Phase 1 / Fix now
Days, low engineering effort
1Confirm the GPTBot and CCBot blocks in the crawler rules file were not a deliberate decision, then remove them and add explicit Allow rules for the named AI crawlers. If the block was deliberate, tell us, because it changes the reading of this whole report.
2Write the price, the delivery frequency options, the free-shipping threshold and the cancellation terms as plain text on the subscription page, above the checkout widget.
3Resize and convert the 18 oversized images, starting with the homepage hero.
4Set up (or verify) Google Search Console and Bing Webmaster Tools. Both are free. Bing's tool feeds Microsoft Copilot's citation index directly, and offers a near-instant re-check feature plus a free backlink report. Submitting the sitemap to both takes five minutes.
Phase 2 / Structural fixes
Weeks, puts the site's best existing content back in reach
5Render a plain, crawlable list of all 41 coffees on the shop page, and add a "more from this origin" module to every coffee page.
6Add server-side rendering to the homepage and shop page, following the pattern already working on the coffee and origin templates.
7Add the sitewide identity record, the café local-business record, and the missing price and availability fields on coffee pages.
8Fix the sitemap generator so it runs on publish rather than on deploy, which is what left the four recent posts out.
Phase 3 / Content & competitive investment
1 to 2 months
9Build a gift subscription page, the largest single uncovered search term in this report.
10Publish a page answering "how much does a coffee subscription cost", covering the market honestly including competitors. This is the most-asked question in the data and nobody owns it well.
11Add a named roaster byline with a one-line credential to the brew guides, and publish a short freshness and returns page.
12Re-run this audit after Phase 1 and 2 land. The crawler-rules and subscription-page fixes are the kind that show up in AI answers within weeks, and knowing whether they did is worth more than guessing.