dalkescientific.com, read 4 days ago. Back to the report

57 to 100 in 22 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.

5757 nownow641#203,324702773top 50%83487590693795896996109611971297139814981599169917991899199920992110022full marks

Now #228,300 of 263,590Step 1 #203,324Step 3 top 50%Step 22 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. 1

    Add structured data

    +7 points, to 64, and #203,324, 24,976 places up

    Add valid JSON-LD that says what the page is.

    99 pages, 80 of them under /writings/

    See the pages
    • /
    • /PyDaylight
    • /PyDaylight/PyDaylight-1.0.tar.gz
    • /Python/PyRSS2Gen.html
    • /bosc2002
    • /company.html
    • /contact.html
    • /index.html
    • /news
    • /news/010701-BOSC.html
    • and 89 more in the copied plan
  2. 2

    Set each page's canonical address

    +6 points, to 70

    Add a canonical link that points to the page itself.

    99 pages, 80 of them under /writings/

    See the pages
    • /
    • /PyDaylight
    • /PyDaylight/PyDaylight-1.0.tar.gz
    • /Python/PyRSS2Gen.html
    • /bosc2002
    • /company.html
    • /contact.html
    • /index.html
    • /news
    • /news/010701-BOSC.html
    • and 89 more in the copied plan
  3. 3

    Add a tap-to-call link

    +7 points, to 77, and into the top 50%

    Add a tap-to-call phone link.

    99 pages, 80 of them under /writings/

    See the pages
    • /
    • /PyDaylight
    • /PyDaylight/PyDaylight-1.0.tar.gz
    • /Python/PyRSS2Gen.html
    • /bosc2002
    • /company.html
    • /contact.html
    • /index.html
    • /news
    • /news/010701-BOSC.html
    • and 89 more in the copied plan
  4. 4

    Add a way to get in touch

    +6 points, to 83

    Give the page a form or a clear link to request a quote or get in touch.

    74 pages, 70 of them under /writings/

    See the pages
    • /PyDaylight/PyDaylight-1.0.tar.gz
    • /Python/PyRSS2Gen.html
    • /bosc2002
    • /oreilly
    • /writings/NBN/ajax.html
    • /writings/NBN/ajax_example.html
    • /writings/NBN/assignment_1.html
    • /writings/NBN/assignment_2.html
    • /writings/NBN/assignment_3.html
    • /writings/NBN/assignment_4.html
    • and 64 more in the copied plan
  5. 5

    Use one main heading

    +4 points, to 87

    Give the page exactly one h1 that says what it is about.

    86 pages, 67 of them under /writings/

    See the pages
    • /
    • /PyDaylight
    • /PyDaylight/PyDaylight-1.0.tar.gz
    • /Python/PyRSS2Gen.html
    • /bosc2002
    • /company.html
    • /contact.html
    • /index.html
    • /news
    • /news/010701-BOSC.html
    • and 76 more in the copied plan
  6. 6

    Fix description lengths

    +3 points, to 90

    Write a meta description of 70 to 165 characters that summarizes the page.

    92 pages, 80 of them under /writings/

    See the pages
    • /PyDaylight
    • /PyDaylight/PyDaylight-1.0.tar.gz
    • /Python/PyRSS2Gen.html
    • /bosc2002
    • /company.html
    • /news
    • /news/010719-Biopython.html
    • /news/011015-PyDaylight.html
    • /news/020825-PyDaylight.html
    • /oreilly
    • and 82 more in the copied plan
  7. 7

    Describe images

    +3 points, to 93

    Describe every content image in its alt text.

    78 pages, 62 of them under /writings/

    See the pages
    • /
    • /PyDaylight
    • /Python/PyRSS2Gen.html
    • /company.html
    • /contact.html
    • /index.html
    • /news
    • /news/010701-BOSC.html
    • /news/010719-Biopython.html
    • /news/010930-OBF.html
    • and 68 more in the copied plan
  8. 8

    Set a share image

    +2 points, to 95

    Set og:image so links to the page carry a picture.

    99 pages, 80 of them under /writings/

    See the pages
    • /
    • /PyDaylight
    • /PyDaylight/PyDaylight-1.0.tar.gz
    • /Python/PyRSS2Gen.html
    • /bosc2002
    • /company.html
    • /contact.html
    • /index.html
    • /news
    • /news/010701-BOSC.html
    • and 89 more in the copied plan
  9. 9

    Fix title lengths

    +1 point, to 96

    Write a title of 15 to 65 characters that leads with what the page covers.

    42 pages, 34 of them under /writings/

    See the pages
    • /PyDaylight/PyDaylight-1.0.tar.gz
    • /Python/PyRSS2Gen.html
    • /news/010719-Biopython.html
    • /news/010930-OBF.html
    • /news/011015-PyDaylight.html
    • /news/011016-hackathon.html
    • /news/020825-PyDaylight.html
    • /oreilly
    • /writings/NBN/ajax_example.html
    • /writings/NBN/assignment_1.html
    • and 32 more in the copied plan
  10. 10

    Let AI crawlers in

    Under a point

    Remove the robots.txt rules that shut out AI crawlers. On Cloudflare, also turn off "Block AI bots", which writes these rules for you.

    Once, for the whole site

    Steps for your host: Cloudflare, WordPress, Namecheap and more
  11. 11

    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

  12. 12

    Answer the first question right under it

    +1 point, to 97

    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.

    7 pages under /news/

    See the pages
    • /news/010701-BOSC.html
    • /news/010719-Biopython.html
    • /news/010930-OBF.html
    • /news/011015-PyDaylight.html
    • /news/011016-hackathon.html
    • /news/020825-PyDaylight.html
    • /news/030111-EUtils.html
  13. 13

    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.

    8 pages, 7 of them under /news/

    See the pages
    • /
    • /news/010701-BOSC.html
    • /news/010719-Biopython.html
    • /news/010930-OBF.html
    • /news/011015-PyDaylight.html
    • /news/011016-hackathon.html
    • /news/020825-PyDaylight.html
    • /news/030111-EUtils.html
  14. 14

    Add depth to thin pages

    +1 point, to 98

    Add true, specific detail until the page covers its subject.

    8 pages, 7 of them under /news/

    See the pages
    • /
    • /news/010701-BOSC.html
    • /news/010719-Biopython.html
    • /news/010930-OBF.html
    • /news/011015-PyDaylight.html
    • /news/011016-hackathon.html
    • /news/020825-PyDaylight.html
    • /news/030111-EUtils.html
  15. 15

    Phrase headings as questions

    Under a point

    Phrase at least one heading as the question a person would ask.

    7 pages under /news/

    See the pages
    • /news/010701-BOSC.html
    • /news/010719-Biopython.html
    • /news/010930-OBF.html
    • /news/011015-PyDaylight.html
    • /news/011016-hackathon.html
    • /news/020825-PyDaylight.html
    • /news/030111-EUtils.html
  16. 16

    Show when guides were updated

    +1 point, to 99

    Show when the guide was last updated, and set dateModified in its schema.

    7 pages under /news/

    See the pages
    • /news/010701-BOSC.html
    • /news/010719-Biopython.html
    • /news/010930-OBF.html
    • /news/011015-PyDaylight.html
    • /news/011016-hackathon.html
    • /news/020825-PyDaylight.html
    • /news/030111-EUtils.html
  17. 17

    Publish a sitemap

    Under a point

    Publish /sitemap.xml listing every page that should rank, and name it in robots.txt.

    Once, for the whole site

  18. 18

    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

  19. 19

    Name the publisher

    Under a point

    Name the author or publisher in the Article schema.

    7 pages under /news/

    See the pages
    • /news/010701-BOSC.html
    • /news/010719-Biopython.html
    • /news/010930-OBF.html
    • /news/011015-PyDaylight.html
    • /news/011016-hackathon.html
    • /news/020825-PyDaylight.html
    • /news/030111-EUtils.html
  20. 20

    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.

    3 pages

    See the pages
    • /
    • /news/010930-OBF.html
    • /news/030111-EUtils.html
  21. 21

    Add breadcrumb data

    Under a point

    Add BreadcrumbList schema so the page has a place in the site.

    7 pages under /news/

    See the pages
    • /news/010701-BOSC.html
    • /news/010719-Biopython.html
    • /news/010930-OBF.html
    • /news/011015-PyDaylight.html
    • /news/011016-hackathon.html
    • /news/020825-PyDaylight.html
    • /news/030111-EUtils.html
  22. 22

    Show sources on guides

    +1 point, to 100, and full marks

    Link the sources for the guide's facts where a reader can see them. Official and primary sources carry the most weight.

    1 page

    See the pages
    • /news/010719-Biopython.html
5 more, to tidy up after 100
  1. 23

    Link straight to the final address

    Under a point

    Point links and the sitemap at the final address, not at one that redirects.

    13 pages, 7 of them under /writings/

    See the pages
    • /PyDaylight
    • /bosc2002
    • /news
    • /oreilly
    • /training
    • /writings
    • /writings/NBN
    • /writings/NBN/python_intro
    • /writings/diary
    • /writings/diary/archive
    • and 3 more in the copied plan
  2. 24

    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
    • /writings/NBN/getting_started.html
  3. 25

    Compress pages

    Under a point

    Turn on gzip or Brotli for HTML on the server or CDN.

    Once, for the whole site

  4. 26

    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

  5. 27

    Link to your profiles

    Under a point

    Link from the home page, in its header or footer, to each profile you keep: Instagram, TikTok, YouTube, Twitch, Facebook, X, LinkedIn.

    Once, for the whole site

What else the read found

Half its pages start answering within 33 ms, inside the 800 ms a crawler is patient with. One fetch a page, the way a crawler sees it.

  • /writings/NBN/data/bacteriorhodopsin.fasta1.1 s
  • /writings/NBN/data/savitzky_golay.py1.1 s
  • /writings/NBN/plotting.html1.0 s
  • /writings/NBN/loading_db.html107 ms
  • /writings/NBN/data/br_plot.py107 ms

Fastest: /writings/NBN/xml_sbml.html, 17 ms. Heaviest: /PyDaylight/PyDaylight-1.0.tar.gz, 439 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.

  • ApacheServer
pages with strong signs
8
hidden characters
8
chat, markdown or placeholders left in
38
dashes per 1,000 words
0
  • /PyDaylight/PyDaylight-1.0.tar.gz markdown never turned into formatting
  • /writings/NBN/c_extensions.html markdown never turned into formatting
  • /writings/NBN/plotting.html markdown never turned into formatting
  • /writings/NBN/slides/lists_and_for_loop.ppt hidden characters a reader cannot see
  • /writings/NBN/slides/references.ppt hidden characters a reader cannot see

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 9: Put the text in the HTML, Add structured data and Set each page's canonical address1 page
  • /oreilly fails 9: Add a way to get in touch, Add structured data and Set each page's canonical address1 page
  • /bosc2002 fails 8: Add a way to get in touch, Add structured data and Set each page's canonical address1 page
  • /news fails 8: Add structured data, Set each page's canonical address and Use one main heading1 page
  • /PyDaylight fails 8: Add structured data, Set each page's canonical address and Use one main heading1 page
  • /training fails 8: Add structured data, Set each page's canonical address and Use one main heading1 page
  • /writings fails 8: Add structured data, Set each page's canonical address and Use one main heading1 page
  • /company.html fails 7: Add structured data, Set each page's canonical address and Use one main heading1 page
  • /contact.html fails 6: Add structured data, Set each page's canonical address and Use one main heading1 page
  • /index.html fails 6: Add structured data, Set each page's canonical address and Use one main heading1 page
  • /writings/ 80 fail a rule. Worst: /writings/diary, 9 rules81 pages
  • /news/ 7 fail a rule. Worst: /news/010719-Biopython.html, 16 rules7 pages

And 2 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

Fix dalkescientific.com with your agent

Your agent makes the fixes. mttr checks each one. Free.

In the site’s repositorynpx skills add subinternal/mttr
Then tell your agentCheck dalkescientific.com with mttr and fix what’s worth the most.

Claude Code, Codex, Cursor or any agent that reads AGENTS.md.

Claude Code, onceclaude mcp add --transport http mttr https://mttr.si/mcp
It needs a free key
Another agent
Read it againChanged something? A site is read at most once every ten minutes.