chainguard.dev, read 2 days ago. Back to the report
80 to 100 in 10 steps
Do them in this order. Each step says what to change, on which pages, and what it adds. Hand the whole plan to your agent, or work through it yourself.
Now #111,099 of 265,044Step 1 top 25%Step 10 full marks
Worked out from this read, with every step before it done. A score says pages are well formed. It does not say an assistant cites the site.
The steps
Each is one change across the pages named. When one is live, read the site again and mttr marks it done.
- 1
Add structured data
+6 points, to 86, and #54,595, 56,504 places up, and into the top 25%
Add valid JSON-LD that says what the page is.
99 pages
See the pages
- /about-us
- /assemble-london-2026
- /assemble-london-2026/agenda
- /assemble-london-2026/speakers
- /assemble26-announcements
- /assemble26-london-announcements
- /athena
- /careers
- /chainguard-love
- /compare
- and 89 more in the copied plan
- 2
Add a tap-to-call link
+6 points, to 92
Add a tap-to-call phone link.
100 pages
See the pages
- /
- /about-us
- /assemble-london-2026
- /assemble-london-2026/agenda
- /assemble-london-2026/speakers
- /assemble26-announcements
- /assemble26-london-announcements
- /athena
- /careers
- /chainguard-love
- and 90 more in the copied plan
- 3
Describe images
+3 points, to 95
Describe every content image in its alt text.
77 pages, 45 of them under /unchained/
See the pages
- /
- /about-us
- /athena
- /careers
- /chainguard-love
- /compare
- /customers
- /events
- /newsroom
- /open-source-leadership
- and 67 more in the copied plan
- 4
Link straight to the final address
+2 points, to 97
Point links and the sitemap at the final address, not at one that redirects.
99 pages
See the pages
- /about-us
- /assemble-london-2026
- /assemble-london-2026/agenda
- /assemble-london-2026/speakers
- /assemble26-announcements
- /assemble26-london-announcements
- /athena
- /careers
- /chainguard-love
- /compare
- and 89 more in the copied plan
- 5
Use one main heading
+1 point, to 98
Give the page exactly one h1 that says what it is about.
17 pages
See the pages
- /partners
- /products/libraries/dotnet
- /products/libraries/go
- /products/libraries/java
- /products/libraries/javascript
- /products/libraries/python
- /scanners
- /solutions/ai-security
- /solutions/cmmc
- /solutions/fedramp
- and 7 more in the copied plan
- 6
Make near-copy pages distinct
Under a point
Rewrite or merge pages that share most of their text. A page that only swaps a city or product name is what search engines treat as doorway or scaled content.
Once, for the whole site
- 7
Match structured data to the page
Under a point
Use the schema type that matches the page: Article for guides, Service or Product for offers, Organization or WebSite for the home page.
14 pages under /products/
See the pages
- /products/actions
- /products/agent-skills
- /products/checks
- /products/containers
- /products/harness
- /products/libraries
- /products/libraries/dotnet
- /products/libraries/go
- /products/libraries/java
- /products/libraries/javascript
- and 4 more in the copied plan
- 8
Phrase headings as questions
+1 point, to 99
Phrase at least one heading as the question a person would ask.
11 pages under /products/
See the pages
- /products/actions
- /products/agent-skills
- /products/checks
- /products/harness
- /products/libraries/dotnet
- /products/libraries/go
- /products/libraries/java
- /products/libraries/javascript
- /products/libraries/python
- /products/os-packages
- and 1 more in the copied plan
- 9
Add breadcrumb data
Under a point
Add BreadcrumbList schema so the page has a place in the site.
14 pages under /products/
See the pages
- /products/actions
- /products/agent-skills
- /products/checks
- /products/containers
- /products/harness
- /products/libraries
- /products/libraries/dotnet
- /products/libraries/go
- /products/libraries/java
- /products/libraries/javascript
- and 4 more in the copied plan
- 10
Fix title lengths
+1 point, to 100, and full marks
Write a title of 15 to 65 characters that leads with what the page covers.
17 pages, 16 of them under /unchained/
See the pages
- /contact
- /unchained/announcing-chainguards-industry-first-validated-fips-140-3-module-delivering-post-quantum-readiness
- /unchained/athena-spotlight-black-duck-on-the-importance-of-flagging-zero-days-at-scale
- /unchained/building-a-category-chainguard-named-a-leader-in-the-inaugural-gartner-magic-quadrant-for-software-supply-chain-security
- /unchained/chainguard-actions-is-generally-available-hardening-1-000-github-actions-and-removing-transitive-ci-cd-risks
- /unchained/chainguard-libraries-for-java-is-now-ga-and-includes-cve-remediation
- /unchained/how-do-you-harden-an-agent-skill-the-simple-file-type-with-serious-complexities
- /unchained/how-financial-services-companies-can-modernize-their-software-supply-chain
- /unchained/introducing-chainguard-harness
- /unchained/introducing-chainguard-repository
- and 7 more in the copied plan
4 more, to tidy up after 100
- 11
Add depth to thin pages
Under a point
Add true, specific detail until the page covers its subject.
1 page
See the pages
- /products/agent-skills
- 12
Remove ratings with no visible reviews
Under a point
Remove rating schema unless the reviews it counts are shown on the page.
The home page
- 13
Show every FAQ question on the page
Under a point
Show every question in the FAQ schema on the page, word for word.
The home page
- 14
Replace unsupported sales claims
Under a point
Replace the sales claim with a fact that can be checked.
1 page
See the pages
- /chainguard-love
What else the read found
Half its pages start answering within 136 ms, inside the 800 ms a crawler is patient with. One fetch a page, the way a crawler sees it.
/unchained/chainguard-libraries-for-java-is-now-ga-and-includes-cve-remediation548 ms/unchained/the-flood-is-coming-and-the-pipes-were-already-full263 ms/unchained/chainguard-receives-morgan-stanley-2026-innovation-award256 ms/supply-chain-security-101252 ms/platform/factory244 ms
Fastest: /unchained/litellm-attacked-again-malicious-1-107-0-wheels-on-pypi-and-docker-hub-october-2026, 28 ms. Heaviest: /supply-chain-security-101, 71 KB.
Read from its home page’s code and the headers its server sent. A tool that loads later, or only on other pages, is not seen here.
Next.jsFramework
VercelHosting
Google Tag ManagerAnalytics
From the structured data on its home page, as the site says it: an Organization named Chainguard. mttr does not check the profiles it names.
- LinkedInchainguard-dev
- YouTube@chainguard
- Xchainguard_dev
- GitHubchainguard-dev
- page with strong signs
- 1
- hidden characters
- 0
- chat, markdown or placeholders left in
- 2
- dashes per 1,000 words
- 1.4
/unchained/this-shit-is-hard-how-ai-keeps-our-code-on-standardmarkdown never turned into formatting
A sign is not proof. Hidden characters can carry a watermark or instructions meant for an AI, and they come off with a clean copy of the text.
/fails 4: Remove ratings with no visible reviews, Show every FAQ question on the page and Add a tap-to-call link1 page/chainguard-lovefails 5: Add structured data, Add a tap-to-call link and Describe images1 page/partnersfails 5: Add structured data, Use one main heading and Add a tap-to-call link1 page/scannersfails 5: Add structured data, Use one main heading and Add a tap-to-call link1 page/about-usfails 4: Add structured data, Add a tap-to-call link and Describe images1 page/athenafails 4: Add structured data, Add a tap-to-call link and Describe images1 page/careersfails 4: Add structured data, Add a tap-to-call link and Describe images1 page/comparefails 4: Add structured data, Add a tap-to-call link and Describe images1 page/contactfails 4: Add structured data, Add a tap-to-call link and Fix title lengths1 page/customersfails 4: Add structured data, Add a tap-to-call link and Describe images1 page/eventsfails 4: Add structured data, Add a tap-to-call link and Describe images1 page/newsroomfails 4: Add structured data, Add a tap-to-call link and Describe images1 page
And 15 more parts of the site.
The read stopped at its page limit, so pages no link leads to cannot be told from pages it did not reach, and neither is reported.
Rather go through these with one of our experts? Book a strategy session