SEO report

SEO report for townhall.com

https://townhall.com/ · checked Sun, 01 Nov 2026 19:20 GMT

✓ 26 Passed! 12 Warnings✗ 7 FailedAI readiness 75%

Fix these first

  1. Render-blocking resourceshigh

    4 blocking script(s) and 3 stylesheet(s) in <head>.

    Fix: Add defer to scripts, inline critical CSS and load the rest asynchronously.

    See the details

  2. Title tagcritical

    “Townhall - Conservative News, Political Analysis and Commentary”

    Fix: Write a unique title of roughly 50–60 characters with the main search phrase first.

    See the details

  3. H1 headingcritical

    “Michigan Democrat Rep. Haley Stevens Endorses Mike Rogers Two Days Before Election”

    Fix: Use one H1 that states the page topic with its main keyword.

    See the details

  4. Freshness signalsmedium

    No published/updated date found.

    Fix: Show a 'last updated' date and add dateModified to your structured data.

    See the details

  5. Scripts & third partiesmedium

    35 script tag(s); files loaded from 9 other domain(s): cdn.jsdelivr.net, cmp.osano.com, media.swncdn.com, googletagmanager.com, assets.freedomadnetwork.com, static.kueezrtb.com….

    Fix: Remove unused tracking and widget scripts; every third party adds connection time.

    See the details

  6. Imagesmedium

    112 image(s).

    Fix: Give every image width and height, lazy-load images below the fold (but not the main image) and serve WebP/AVIF.

    See the details

  7. Tap-to-contactmedium

    No tel: or mailto: links.

    Fix: Add a tap-to-call or tap-to-email button so phone visitors can contact you instantly.

    See the details

  8. Meta descriptionhigh

    175 characters, ~1094px of ~990px.

    Fix: Write a 140–155 character description that answers the searcher's question and invites the click.

    See the details

Check the whole website

This report covers one page. The full-site audit crawls up to 250 pages to find broken links, duplicate titles, orphan pages and more.

Run a full-site audit

Monitor this site weekly

We'll re-check it every week and track the score, with a history graph and a list of anything that breaks.

Compare with competitors

See how this page scores against up to two competitors, side by side, and where they beat you.

Compare sites

Real-world speed Google PageSpeed

Loading Core Web Vitals from Google… this can take up to 30 seconds.

Authority & backlinks

Looking up which websites link to townhall.com…

Indexing & crawling 100%

Can search engines reach, read and index this page?

  • ✓

    Status codecritical

    The page returned HTTP 200.

  • ✓

    Indexablecritical

    No noindex instruction – the page can appear in search.

  • ✓

    robots.txthigh

    robots.txt found.

    Googlebot is allowed to crawl this page.

  • ✓

    XML sitemaphigh

    Sitemap index found at https://townhall.com/sitemaps/sitemapindex-townhall.xml listing 4 sitemaps.

    Declared in robots.txt.

    Most recent lastmod: 2026-11-01.

  • ✓

    Canonical URLhigh

    Canonical: https://townhall.com/

    Points to this page (self-referencing).

  • ✓

    Redirectshigh

    Loads directly with no redirects.

  • ✓

    www / non-wwwmedium

    www.townhall.com redirects to townhall.com.

Search snippet & sharing 67%

How the page looks in Google results and when shared.

Content quality 69%

Is there enough clear, useful text that matches what the page targets?

  • ✓

    Word countmedium

    1,320 words of main content (inside <main>).

    Google has no minimum word count – this is a rough guide to whether the page answers the question in full.

  • i

    Readabilitymedium

    Not enough paragraph text to score readability.

  • ✓

    Topic focushigh

    4 of 5 title keywords appear in the main content (missing: analysis).

  • !

    H1 headingcritical

    “Michigan Democrat Rep. Haley Stevens Endorses Mike Rogers Two Days Before Election”

    The H1 shares no keywords with the title.

    Fix: Use one H1 that states the page topic with its main keyword.

  • !

    Heading structuremedium

    60 headings for 1320 words – a lot for the amount of text.

    2 skipped level(s), e.g. H2 → H4.

    Fix: Use H2s for main sections and H3s inside them, without skipping levels.

  • !

    Text-to-code ratiolow

    5% of the HTML is visible text.

    Fix: Trim unused markup, inline scripts and builder bloat.

AI search readiness 75%

Can ChatGPT, Claude, Perplexity and Google AI Overviews read, understand and cite this site?

  • ✓

    AI crawler accesshigh

    Search and AI-search crawlers (Googlebot, Bingbot, OAI-SearchBot, Claude-SearchBot, PerplexityBot…) can read this page.

  • ✓

    Snippet controlshigh

    No snippet restrictions – search and AI answers can quote this page.

  • ✓

    llms.txtlow

    /llms.txt found.

  • !

    Question-led contentmedium

    1 heading(s) phrased as questions, e.g. “France's Unrest Should Make Americans Ask: What Are We Asking People t”.

    Fix: Add headings that match real questions ("How much does…?") followed by a direct one- or two-sentence answer – an easy format for search and AI answers to quote.

  • ✓

    Entity clarityhigh

    Identified as: NewsMediaOrganization.

    2 official profile link(s) (sameAs).

  • ✗

    Freshness signalsmedium

    No published/updated date found.

    Fix: Show a 'last updated' date and add dateModified to your structured data.

  • !

    Trust pages (E-E-A-T)medium

    Links found to about and contact; missing privacy.

    Fix: Link to About, Contact and Privacy pages from every page – they help visitors, Google and AI tools see who stands behind the content.

Structured data 100%

Machine-readable facts for rich results and AI.

  • ✓

    JSON-LD present & validhigh

    2 JSON-LD block(s): NewsMediaOrganization, ImageObject, WebSite, SearchAction, EntryPoint.

    All blocks parse correctly.

  • ✓

    Required propertiesmedium

    Key types include Google's required properties.

  • i

    Breadcrumbslow

    Home page – breadcrumbs not needed.

Performance 38%

Speed signals from the HTML and server. Real-user Core Web Vitals load below.

  • ✓

    Server response (TTFB)high

    24 ms until the first response from our checker, including connection setup (Google rates TTFB good under 0.8 s, poor over 1.8 s).

  • !

    HTML sizemedium

    193 kB of HTML.

    Fix: Remove inline bloat, base64 images and unused markup.

  • i

    Compressionmedium

    Couldn't be measured from our server (our fetch decodes compressed pages before we see them). Check in your browser's developer tools that HTML is sent with br or gzip.

  • ✗

    Render-blocking resourceshigh

    4 blocking script(s) and 3 stylesheet(s) in <head>.

    Fix: Add defer to scripts, inline critical CSS and load the rest asynchronously.

  • ✗

    Scripts & third partiesmedium

    35 script tag(s); files loaded from 9 other domain(s): cdn.jsdelivr.net, cmp.osano.com, media.swncdn.com, googletagmanager.com, assets.freedomadnetwork.com, static.kueezrtb.com….

    Fix: Remove unused tracking and widget scripts; every third party adds connection time.

  • ✗

    Imagesmedium

    112 image(s).

    46 without width/height – can cause layout shift (CLS).

    81 image(s) after the first three aren't lazy-loaded.

    2 use WebP/AVIF or responsive srcset.

    Fix: Give every image width and height, lazy-load images below the fold (but not the main image) and serve WebP/AVIF.

  • ✓

    Cachinglow

    Cache-Control: public, max-age=30

  • i

    HTTP/3low

    Couldn't be confirmed from our server – the alt-svc header that advertises HTTP/3 isn't always visible to it. Your site is on Cloudflare, which offers HTTP/3 under Network settings.

Security 75%

Visitor safety signals that browsers and Google check.

  • ✓

    HTTPScritical

    Secure HTTPS with no mixed content.

  • ✓

    HTTP → HTTPS redirecthigh

    http:// redirects to https://.

  • !

    HSTSmedium

    HSTS: max-age=2592000

    max-age is under 6 months – browsers will forget it quickly.

    Fix: Add Strict-Transport-Security: max-age=63072000; includeSubDomains.

  • ✗

    Security headerslow

    Present: none.

    Fix: Add X-Content-Type-Options, Referrer-Policy, Permissions-Policy and X-Frame-Options (or a CSP).

  • ✗

    Server fingerprintlow

    X-Powered-By reveals “ASP.NET”.

    Fix: Remove X-Powered-By so attackers can't see your software versions.

Mobile & accessibility 75%

Usable on phones and by everyone – Google indexes the mobile version.

  • ✓

    Mobile viewportcritical

    viewport: width=device-width, initial-scale=1

  • !

    Image alt textmedium

    1 of 112 images have no alt attribute.

    Fix: Describe each meaningful image in its alt attribute (use alt="" for decorative ones).

  • ✓

    Form labelsmedium

    All 4 form fields are labelled.

  • ✗

    Tap-to-contactmedium

    No tel: or mailto: links.

    Fix: Add a tap-to-call or tap-to-email button so phone visitors can contact you instantly.

Local SEO not scored

This site doesn't look like a local business, so these checks are shown for information and not scored.

  • i

    LocalBusiness markuphigh

    No LocalBusiness structured data.

  • i

    Contact details on pagemedium

    No phone number found.

    No postcode found (fine for service-area businesses).

  • i

    Map & directionslow

    No map or directions link.

This report checks one page. Scores are a guide, not a guarantee of rankings. Check another page · Print or save as PDF

Want these fixed for you? XKey is made by IceWork, a Blackpool web studio. IceWork builds fast websites that pass every check here – a 3-page site with domain and a year's hosting is £350 all in.