davegallant.ca, read 4 days ago. Back to the report
75 to 100 in 17 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 #148,373 of 264,756Step 1 top 50%Step 17 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 a tap-to-call link
+6 points, to 81, and #97,751, 50,622 places up, and into the top 50%
Add a tap-to-call phone link.
92 pages, 70 of them under /tags/
See the pages
- /
- /blog
- /blog/amazon-ebs-csi-driver-terraform
- /blog/appgate-sdp-on-arch-linux
- /blog/automatically-rotating-aws-keys
- /blog/backing-up-gmail-with-synology
- /blog/opting-out-of-haveibeenpwned
- /blog/pvectl-a-cli-for-proxmox
- /blog/replacing-docker-with-podman-on-macos
- /blog/replicating-truenas-datasets-to-sftpgo-over-tailscale
- and 82 more in the copied plan
- 2
Add structured data
+6 points, to 87
Add valid JSON-LD that says what the page is.
92 pages, 70 of them under /tags/
See the pages
- /
- /blog
- /blog/amazon-ebs-csi-driver-terraform
- /blog/appgate-sdp-on-arch-linux
- /blog/automatically-rotating-aws-keys
- /blog/backing-up-gmail-with-synology
- /blog/opting-out-of-haveibeenpwned
- /blog/pvectl-a-cli-for-proxmox
- /blog/replacing-docker-with-podman-on-macos
- /blog/replicating-truenas-datasets-to-sftpgo-over-tailscale
- and 82 more in the copied plan
- 3
Fix description lengths
+2 points, to 89
Write a meta description of 70 to 165 characters that summarizes the page.
89 pages, 70 of them under /tags/
See the pages
- /
- /blog
- /blog/amazon-ebs-csi-driver-terraform
- /blog/automatically-rotating-aws-keys
- /blog/backing-up-gmail-with-synology
- /blog/opting-out-of-haveibeenpwned
- /blog/pvectl-a-cli-for-proxmox
- /blog/replacing-docker-with-podman-on-macos
- /blog/replicating-truenas-datasets-to-sftpgo-over-tailscale
- /blog/running-k3s-in-lxc-on-proxmox
- and 79 more in the copied plan
- 4
Fix title lengths
+3 points, to 92
Write a title of 15 to 65 characters that leads with what the page covers.
70 pages, 65 of them under /tags/
See the pages
- /
- /blog
- /categories
- /search
- /tags
- /tags/aks
- /tags/aws
- /tags/aws-vault
- /tags/azure
- /tags/backup
- and 60 more in the copied plan
- 5
Show when guides were updated
+1 point, to 93
Show when the guide was last updated, and set dateModified in its schema.
17 pages under /blog/
See the pages
- /blog/amazon-ebs-csi-driver-terraform
- /blog/appgate-sdp-on-arch-linux
- /blog/automatically-rotating-aws-keys
- /blog/backing-up-gmail-with-synology
- /blog/opting-out-of-haveibeenpwned
- /blog/pvectl-a-cli-for-proxmox
- /blog/replacing-docker-with-podman-on-macos
- /blog/replicating-truenas-datasets-to-sftpgo-over-tailscale
- /blog/running-k3s-in-lxc-on-proxmox
- /blog/setting-up-gitea-actions-with-tailscale
- and 7 more in the copied plan
- 6
Name the publisher
+1 point, to 94
Name the author or publisher in the Article schema.
17 pages under /blog/
See the pages
- /blog/amazon-ebs-csi-driver-terraform
- /blog/appgate-sdp-on-arch-linux
- /blog/automatically-rotating-aws-keys
- /blog/backing-up-gmail-with-synology
- /blog/opting-out-of-haveibeenpwned
- /blog/pvectl-a-cli-for-proxmox
- /blog/replacing-docker-with-podman-on-macos
- /blog/replicating-truenas-datasets-to-sftpgo-over-tailscale
- /blog/running-k3s-in-lxc-on-proxmox
- /blog/setting-up-gitea-actions-with-tailscale
- and 7 more in the copied plan
- 7
Set a share image
+1 point, to 95
Set og:image so links to the page carry a picture.
84 pages, 70 of them under /tags/
See the pages
- /
- /blog
- /blog/amazon-ebs-csi-driver-terraform
- /blog/appgate-sdp-on-arch-linux
- /blog/automatically-rotating-aws-keys
- /blog/opting-out-of-haveibeenpwned
- /blog/replacing-docker-with-podman-on-macos
- /blog/replicating-truenas-datasets-to-sftpgo-over-tailscale
- /blog/running-k3s-in-lxc-on-proxmox
- /blog/using-aks-and-socks-to-connect-to-a-private-azure-db
- and 74 more in the copied plan
- 8
Answer the first question right under it
+1 point, to 96
Answer the first question in the paragraph right under it, in 25 to 90 words. Whether the paragraph truly answers is for the judge or a person to say.
14 pages under /blog/
See the pages
- /blog/amazon-ebs-csi-driver-terraform
- /blog/appgate-sdp-on-arch-linux
- /blog/automatically-rotating-aws-keys
- /blog/backing-up-gmail-with-synology
- /blog/opting-out-of-haveibeenpwned
- /blog/pvectl-a-cli-for-proxmox
- /blog/replacing-docker-with-podman-on-macos
- /blog/replicating-truenas-datasets-to-sftpgo-over-tailscale
- /blog/using-a-realtek-nic-with-opnsense
- /blog/using-aks-and-socks-to-connect-to-a-private-azure-db
- and 4 more in the copied plan
- 9
Match structured data to the page
+1 point, to 97
Use the schema type that matches the page: Article for guides, Service or Product for offers, Organization or WebSite for the home page.
18 pages, 17 of them under /blog/
See the pages
- /
- /blog/amazon-ebs-csi-driver-terraform
- /blog/appgate-sdp-on-arch-linux
- /blog/automatically-rotating-aws-keys
- /blog/backing-up-gmail-with-synology
- /blog/opting-out-of-haveibeenpwned
- /blog/pvectl-a-cli-for-proxmox
- /blog/replacing-docker-with-podman-on-macos
- /blog/replicating-truenas-datasets-to-sftpgo-over-tailscale
- /blog/running-k3s-in-lxc-on-proxmox
- and 8 more in the copied plan
- 10
Settle on one address
Under a point
Redirect http, https, www, and the bare domain to one address, so the site is not indexed as several.
Once, for the whole site
- 11
Link to orphaned pages
Under a point
Link to each of these from a related page. A page only the sitemap knows about is treated as unimportant.
Once, for the whole site
- 12
Phrase headings as questions
+1 point, to 98
Phrase at least one heading as the question a person would ask.
12 pages under /blog/
See the pages
- /blog/amazon-ebs-csi-driver-terraform
- /blog/appgate-sdp-on-arch-linux
- /blog/automatically-rotating-aws-keys
- /blog/backing-up-gmail-with-synology
- /blog/opting-out-of-haveibeenpwned
- /blog/pvectl-a-cli-for-proxmox
- /blog/replicating-truenas-datasets-to-sftpgo-over-tailscale
- /blog/using-a-realtek-nic-with-opnsense
- /blog/using-home-assistant-and-grafana-to-monitor-radon
- /blog/virtualizing-a-router-with-pfsense
- and 2 more in the copied plan
- 13
Put figures in tables
Under a point
Where the guide compares options or gives figures, put them in a table.
17 pages under /blog/
See the pages
- /blog/amazon-ebs-csi-driver-terraform
- /blog/appgate-sdp-on-arch-linux
- /blog/automatically-rotating-aws-keys
- /blog/backing-up-gmail-with-synology
- /blog/opting-out-of-haveibeenpwned
- /blog/pvectl-a-cli-for-proxmox
- /blog/replacing-docker-with-podman-on-macos
- /blog/replicating-truenas-datasets-to-sftpgo-over-tailscale
- /blog/running-k3s-in-lxc-on-proxmox
- /blog/setting-up-gitea-actions-with-tailscale
- and 7 more in the copied plan
- 14
Add lists or tables
+1 point, to 99
Add a table, a list, or a definition list. Assistants quote these more readily than prose.
9 pages under /blog/
See the pages
- /blog/appgate-sdp-on-arch-linux
- /blog/automatically-rotating-aws-keys
- /blog/backing-up-gmail-with-synology
- /blog/opting-out-of-haveibeenpwned
- /blog/replacing-docker-with-podman-on-macos
- /blog/replicating-truenas-datasets-to-sftpgo-over-tailscale
- /blog/using-home-assistant-and-grafana-to-monitor-radon
- /blog/watching-youtube-in-private
- /blog/why-i-threw-out-my-dotfiles
- 15
Add real images to content
Under a point
Add a photo, drawing, or chart as an img with alt text. A CSS background image has no alt text and is not read as part of the page.
9 pages under /blog/
See the pages
- /blog/amazon-ebs-csi-driver-terraform
- /blog/appgate-sdp-on-arch-linux
- /blog/automatically-rotating-aws-keys
- /blog/opting-out-of-haveibeenpwned
- /blog/replacing-docker-with-podman-on-macos
- /blog/replicating-truenas-datasets-to-sftpgo-over-tailscale
- /blog/running-k3s-in-lxc-on-proxmox
- /blog/using-aks-and-socks-to-connect-to-a-private-azure-db
- /blog/why-i-threw-out-my-dotfiles
- 16
Add breadcrumb data
Under a point
Add BreadcrumbList schema so the page has a place in the site.
17 pages under /blog/
See the pages
- /blog/amazon-ebs-csi-driver-terraform
- /blog/appgate-sdp-on-arch-linux
- /blog/automatically-rotating-aws-keys
- /blog/backing-up-gmail-with-synology
- /blog/opting-out-of-haveibeenpwned
- /blog/pvectl-a-cli-for-proxmox
- /blog/replacing-docker-with-podman-on-macos
- /blog/replicating-truenas-datasets-to-sftpgo-over-tailscale
- /blog/running-k3s-in-lxc-on-proxmox
- /blog/setting-up-gitea-actions-with-tailscale
- and 7 more in the copied plan
- 17
Add depth to thin pages
+1 point, to 100, and full marks
Add true, specific detail until the page covers its subject.
6 pages, 5 of them under /blog/
See the pages
- /
- /blog/amazon-ebs-csi-driver-terraform
- /blog/automatically-rotating-aws-keys
- /blog/opting-out-of-haveibeenpwned
- /blog/replicating-truenas-datasets-to-sftpgo-over-tailscale
- /blog/watching-youtube-in-private
6 more, to tidy up after 100
- 18
Add an llms.txt
Under a point
Add /llms.txt: a short plain text map of the site for assistants. Its effect is unproven, so treat it as cheap insurance.
Once, for the whole site
- 19
Put the text in the HTML
Under a point
Put the page text in the HTML the server sends. Most AI crawlers do not run scripts.
The home page
- 20
Set each page's canonical address
Under a point
Add a canonical link that points to the page itself.
3 pages under /tags/page/
See the pages
- /tags/page/2
- /tags/page/3
- /tags/page/4
- 21
Use one main heading
Under a point
Give the page exactly one h1 that says what it is about.
2 pages
See the pages
- /blog/appgate-sdp-on-arch-linux
- /blog/using-a-realtek-nic-with-opnsense
- 22
Fix pages that fail to load
Under a point
Fix or remove the link. Every linked page should return 200.
1 page
See the pages
- /cdn-cgi/l/email-protection
- 23
Link straight to the final address
Under a point
Point links and the sitemap at the final address, not at one that redirects.
3 pages under /tags/page/
See the pages
- /tags/page/2
- /tags/page/3
- /tags/page/4
What else the read found
Half its pages start answering within 96 ms, inside the 800 ms a crawler is patient with. One fetch a page, the way a crawler sees it.
/tags/bastion217 ms/tags/page/2213 ms/tags/linux194 ms/tags/homelab184 ms/blog/automatically-rotating-aws-keys180 ms
Fastest: /tags/k3s, 22 ms. Heaviest: /blog/setting-up-gitea-actions-with-tailscale, 7 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.
CloudflareHosting
- pages with strong signs
- 0
- hidden characters
- 0
- chat, markdown or placeholders left in
- 0
- dashes per 1,000 words
- 0.5
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 8: Put the text in the HTML, Add structured data and Add depth to thin pages1 page/blogfails 5: Add structured data, Add a tap-to-call link and Fix description lengths1 page/categoriesfails 5: Add structured data, Add a tap-to-call link and Fix description lengths1 page/searchfails 5: Add structured data, Add a tap-to-call link and Fix description lengths1 page/tagsfails 5: Add structured data, Add a tap-to-call link and Fix description lengths1 page/tags/70 fail a rule. Worst: /tags/page/2, 7 rules70 pages/blog/17 fail a rule. Worst: /blog/automatically-rotating-aws-keys, 14 rules17 pages/cdn-cgi/0 fail a rule1 page
Rather go through these with one of our experts? Book a strategy session