premierroofingandrepair.com, read 3 days ago. Back to the report

90 to 100 in 15 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.

9090 nownow931top 10%9529639849859869879889899910991199129913991410015full marks

Now #32,277 of 264,630Step 1 top 10%Step 15 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

    Answer the first question right under it

    +3 points, to 93, and #10,831, 21,446 places up, and into the top 10%

    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.

    73 pages, 64 of them under /areas-we-serve/

    See the pages
    • /about-us
    • /areas-we-serve
    • /areas-we-serve/adamsville-al-roofer
    • /areas-we-serve/akron-al-roofer
    • /areas-we-serve/alabaster-al-roofer
    • /areas-we-serve/aliceville-al-roofer
    • /areas-we-serve/berry-al-roofer
    • /areas-we-serve/bessemer-al-roofer
    • /areas-we-serve/big-sandy-al-roofer
    • /areas-we-serve/birmingham-al-roofer
    • and 63 more in the copied plan
  2. 2

    Phrase headings as questions

    +2 points, to 95

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

    72 pages, 64 of them under /areas-we-serve/

    See the pages
    • /about-us
    • /areas-we-serve
    • /areas-we-serve/adamsville-al-roofer
    • /areas-we-serve/akron-al-roofer
    • /areas-we-serve/alabaster-al-roofer
    • /areas-we-serve/aliceville-al-roofer
    • /areas-we-serve/berry-al-roofer
    • /areas-we-serve/bessemer-al-roofer
    • /areas-we-serve/big-sandy-al-roofer
    • /areas-we-serve/birmingham-al-roofer
    • and 62 more in the copied plan
  3. 3

    Put figures in tables

    +1 point, to 96

    Where the guide compares options or gives figures, put them in a table.

    82 pages, 64 of them under /areas-we-serve/

    See the pages
    • /about-us
    • /areas-we-serve
    • /areas-we-serve/adamsville-al-roofer
    • /areas-we-serve/akron-al-roofer
    • /areas-we-serve/alabaster-al-roofer
    • /areas-we-serve/aliceville-al-roofer
    • /areas-we-serve/berry-al-roofer
    • /areas-we-serve/bessemer-al-roofer
    • /areas-we-serve/big-sandy-al-roofer
    • /areas-we-serve/birmingham-al-roofer
    • and 72 more in the copied plan
  4. 4

    Describe images

    +2 points, to 98

    Describe every content image in its alt text.

    82 pages, 64 of them under /areas-we-serve/

    See the pages
    • /
    • /about-us
    • /areas-we-serve/adamsville-al-roofer
    • /areas-we-serve/akron-al-roofer
    • /areas-we-serve/alabaster-al-roofer
    • /areas-we-serve/aliceville-al-roofer
    • /areas-we-serve/berry-al-roofer
    • /areas-we-serve/bessemer-al-roofer
    • /areas-we-serve/big-sandy-al-roofer
    • /areas-we-serve/birmingham-al-roofer
    • and 72 more in the copied plan
  5. 5

    Add breadcrumb data

    Under a point

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

    82 pages, 64 of them under /areas-we-serve/

    See the pages
    • /about-us
    • /areas-we-serve
    • /areas-we-serve/adamsville-al-roofer
    • /areas-we-serve/akron-al-roofer
    • /areas-we-serve/alabaster-al-roofer
    • /areas-we-serve/aliceville-al-roofer
    • /areas-we-serve/berry-al-roofer
    • /areas-we-serve/bessemer-al-roofer
    • /areas-we-serve/big-sandy-al-roofer
    • /areas-we-serve/birmingham-al-roofer
    • and 72 more in the copied plan
  6. 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. 7

    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

  8. 8

    Speed up the server

    Under a point

    Cache pages or speed up the server. Crawlers give a slow site fewer visits.

    Once, for the whole site

  9. 9

    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

  10. 10

    Add depth to thin pages

    +1 point, to 99

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

    9 pages

    See the pages
    • /about-us
    • /areas-we-serve
    • /commercial-roofing
    • /residential-roofing
    • /roof-inspections-tuscaloosa-al
    • /roof-replacement-or-repair-financing
    • /storm-damage-emergency-services
    • /storm-damage-insurance-claims
    • /storm-damage-roof-repair-replacement
  11. 11

    Link to pages from related content

    Under a point

    Link to this page from the text of a related page. Navigation links say a page exists; links in content say what it is related to.

    11 pages, 6 of them under /residential-roofing/

    See the pages
    • /about-us
    • /residential-roofing/flat-roof-replacement
    • /residential-roofing/metal-roof-repair
    • /residential-roofing/metal-roofing-leak-repairs
    • /residential-roofing/pipe-or-plumbing-boot-leak-repairs
    • /residential-roofing/ridge-vent-repairs
    • /residential-roofing/siding-repairs
    • /roof-inspections-tuscaloosa-al
    • /storm-damage-emergency-services
    • /storm-damage-insurance-claims
    • and 1 more in the copied plan
  12. 12

    Fix title lengths

    Under a point

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

    6 pages

    See the pages
    • /about-us
    • /areas-we-serve
    • /blog
    • /contact-us
    • /locations.kml
    • /roof-replacement-or-repair-financing
  13. 13

    Show sources on guides

    Under a point

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

    2 pages

    See the pages
    • /areas-we-serve
    • /strickland-premier-roofing-rebrands-to-premier-roofing-and-repair
  14. 14

    Fix description lengths

    Under a point

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

    4 pages

    See the pages
    • /
    • /areas-we-serve
    • /locations.kml
    • /roof-replacement-or-repair-financing
  15. 15

    Use one main heading

    +1 point, to 100, and full marks

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

    2 pages

    See the pages
    • /locations.kml
    • /roof-replacement-or-repair-financing
10 more, to tidy up after 100
  1. 16

    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
  2. 17

    Set a share image

    Under a point

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

    4 pages

    See the pages
    • /areas-we-serve
    • /blog
    • /locations.kml
    • /strickland-premier-roofing-rebrands-to-premier-roofing-and-repair
  3. 18

    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.

    2 pages

    See the pages
    • /areas-we-serve
    • /strickland-premier-roofing-rebrands-to-premier-roofing-and-repair
  4. 19

    Replace unsupported sales claims

    Under a point

    Replace the sales claim with a fact that can be checked.

    2 pages

    See the pages
    • /about-us
    • /roof-replacement-or-repair-financing
  5. 20

    Add structured data

    Under a point

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

    1 page

    See the pages
    • /locations.kml
  6. 21

    Add a way to get in touch

    Under a point

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

    1 page

    See the pages
    • /locations.kml
  7. 22

    Set each page's canonical address

    Under a point

    Add a canonical link that points to the page itself.

    1 page

    See the pages
    • /locations.kml
  8. 23

    Add a tap-to-call link

    Under a point

    Add a tap-to-call phone link.

    1 page

    See the pages
    • /locations.kml
  9. 24

    Add lists or tables

    Under a point

    Add a table, a list, or a definition list. Assistants quote these more readily than prose.

    1 page

    See the pages
    • /strickland-premier-roofing-rebrands-to-premier-roofing-and-repair
  10. 25

    Link straight to the final address

    Under a point

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

    1 page

    See the pages
    • /blog

What else the read found

Half its pages take over 1,809 ms to start answering, past the 800 ms a crawler is patient with. Caching or a faster server helps every page at once. One fetch a page, the way a crawler sees it.

  • /4.5 s
  • /areas-we-serve/akron-al-roofer4.1 s
  • /about-us3.8 s
  • /areas-we-serve3.7 s
  • /areas-we-serve/newbern-al-roofer3.6 s

Fastest: /locations.kml, 704 ms. Heaviest: the home page, 43 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.

  • WordPressPlatform
  • CloudflareHosting
  • Google Tag ManagerAnalytics
  • Google AnalyticsAnalytics
  • Cloudflare Web AnalyticsAnalytics
  • PlausibleAnalytics
  • Google FontsFonts

From the structured data on its home page, as the site says it: a Roofing contractor named Premier Roofing and Repair. mttr does not check the profiles it names.

  • FacebookWhiteoaksconstructionllc
  • XWhiteOaksRoof
  • YouTube@WhiteOaksConstruction
  • Instagramwhite-oaks-construction-llc
  • PinterestWhiteOaksConstruction
pages with strong signs
0
hidden characters
0
chat, markdown or placeholders left in
0
dashes per 1,000 words
6.2

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 2: Fix description lengths and Describe images1 page
  • /areas-we-serve fails 10: Answer the first question right under it, Show sources on guides and Add depth to thin pages1 page
  • /roof-replacement-or-repair-financing fails 10: Answer the first question right under it, Add depth to thin pages and Use one main heading1 page
  • /about-us fails 9: Answer the first question right under it, Add depth to thin pages and Phrase headings as questions1 page
  • /strickland-premier-roofing-rebrands-to-premier-roofing-and-repair fails 9: Answer the first question right under it, Show sources on guides and Phrase headings as questions1 page
  • /locations.kml fails 8: Add a way to get in touch, Add structured data and Set each page's canonical address1 page
  • /roof-inspections-tuscaloosa-al fails 7: Answer the first question right under it, Add depth to thin pages and Phrase headings as questions1 page
  • /storm-damage-emergency-services fails 7: Answer the first question right under it, Add depth to thin pages and Phrase headings as questions1 page
  • /commercial-roofing fails 6: Answer the first question right under it, Add depth to thin pages and Phrase headings as questions1 page
  • /residential-roofing fails 6: Answer the first question right under it, Add depth to thin pages and Phrase headings as questions1 page
  • /storm-damage-insurance-claims fails 6: Answer the first question right under it, Add depth to thin pages and Put figures in tables1 page
  • /storm-damage-roof-repair-replacement fails 4: Add depth to thin pages, Put figures in tables and Describe images1 page

And 5 more parts of the site.

Rather go through these with one of our experts? Book a strategy session

Fix premierroofingandrepair.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 premierroofingandrepair.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.