Catalog / dominatingtennis.com
65

SEO audit for dominatingtennis.com

Dominating Tennis — How tennis actually works.

otherNext.js

Health 65/100 (fair) · 50 pages crawled · generated 2026-08-26

Download Markdown report (feed to ChatGPT / Claude / Cursor)

A visual, first-principles guide to how tennis actually works — biomechanics, physics, technique and tactics, drawn as interactive blueprints.

Screenshot of dominatingtennis.com
50
pages crawled
50
indexable pages
0
errors
97
warnings
260
notices
0
orphan pages
0
broken links
Category breakdown
CategoryScoreErrorsWarningsNotices
Canonical 70 0 50 0
Content 73 0 45 48
Headings 99 0 1 0
Video 99 0 1 0
Agent Readiness 100 0 0 4
AI Content 100 0 0 1
Duplicate 100 0 0 3
Meta Description 100 0 0 3
Performance 100 0 0 50
Robots 100 0 0 1
Security 100 0 0 50
Social 100 0 0 50
Structured Data 100 0 0 50
Findings

Warnings (4 rules)

warning Thin content (low word count)

Rule content.thin · Content · 45 occurrence(s)

warning Missing <h1>

Rule h1.missing · Headings · 1 occurrence(s)

warning Video element present but hidden/zero-size (prominence)

Rule video.hidden · Video · 1 occurrence(s)

Notices (12 rules)

notice Heading levels skip a level

Rule agent.heading_skip · Agent Readiness · 3 occurrence(s)

notice No llms.txt for AI agents

Rule agent.llms_txt_missing · Agent Readiness · 1 occurrence(s)

notice Low text variety (weak AI-content signal)

Rule ai.low_variety · AI Content · 1 occurrence(s)

  • https://www.dominatingtennis.com/chapters — This page's writing is unusually uniform — even sentence lengths (variation 0.44) and repetitive vocabulary (diversity 0.68). That pattern is weakly associated with machine-generated or templated text, but it is not proof: technical and non-native writing can look the same, and AI detectors are unreliable. Treat it as a nudge to check the page adds original value — not as a verdict.

notice Low text-to-HTML ratio

Rule content.low_ratio · Content · 47 occurrence(s)

notice Main text is hard to read (low Flesch Reading Ease)

Rule content.readability_poor · Content · 1 occurrence(s)

  • https://www.dominatingtennis.com/chapters — this page reads as difficult (Flesch Reading Ease 49, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.

notice Duplicate meta description across pages

Rule duplicate.meta_desc · Duplicate · 3 occurrence(s)

notice Meta description too long

Rule meta_desc.too_long · Meta Description · 3 occurrence(s)

notice Missing Open Graph tags

Rule og.missing · Social · 50 occurrence(s)

notice No Last-Modified header (no conditional GET for unchanged pages)

Rule perf.no_last_modified · Performance · 50 occurrence(s)

  • https://www.dominatingtennis.com/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters/grips — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters/ground-reaction-force — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters/how-scoring-works — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters/how-spin-is-made — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters/inside-contact — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters/off-centre-hits — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters/pace-vs-spin — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters/pronation-and-the-wrist — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters/racquet-anatomy — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters/reading-flight — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters/rotation-and-separation — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters/string-bed — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters/sweet-spot — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters/the-ball — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters/the-bounce — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters/the-court — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters/the-forehand — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters/the-magnus-effect — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters/the-rules — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters/the-whip — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters/trajectory — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/chapters/where-power-comes-from — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.dominatingtennis.com/early-access — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.

notice robots.txt missing (root returns 404/none)

Rule robots.txt_missing · Robots · 1 occurrence(s)

  • https://www.dominatingtennis.com/ — robots.txt did not return a 200 at the site root — a healthy site should serve one (declare your sitemap and confirm the host serves root files)

notice Missing recommended security headers

Rule security.missing_headers · Security · 50 occurrence(s)

Pages (showing 50 of 50)
URLStatusIndexableWordsIn-links
https://www.dominatingtennis.com/
Dominating Tennis — How tennis actually works.
200 yes 1434 50
https://www.dominatingtennis.com/chapters
Table of Contents · Dominating Tennis
200 yes 555 50
https://www.dominatingtennis.com/early-access
Early access · Dominating Tennis
200 yes 99 50
https://www.dominatingtennis.com/chapters/ground-reaction-force
Ground reaction force · Dominating Tennis
200 yes 86 3
https://www.dominatingtennis.com/chapters/the-bounce
The bounce: how spin changes the kick · Dominating Tennis
200 yes 84 3
https://www.dominatingtennis.com/chapters/trajectory
Trajectory & the net window · Dominating Tennis
200 yes 78 3
https://www.dominatingtennis.com/chapters/one-handed-backhand
The one-handed backhand · Dominating Tennis
200 yes 78 3
https://www.dominatingtennis.com/chapters/reading-flight
Reading the ball early · Dominating Tennis
200 yes 81 3
https://www.dominatingtennis.com/chapters/the-magnus-effect
Topspin & the Magnus effect · Dominating Tennis
200 yes 2192 3
https://www.dominatingtennis.com/chapters/where-power-comes-from
Where power comes from — the kinetic chain · Dominating Tennis
200 yes 3097 3
https://www.dominatingtennis.com/chapters/block-vs-swing
Block vs swing return · Dominating Tennis
200 yes 80 2
https://www.dominatingtennis.com/chapters/court-geometry
Court geometry & angles · Dominating Tennis
200 yes 75 2
https://www.dominatingtennis.com/chapters/drop-shot-and-lob
The drop shot & the lob · Dominating Tennis
200 yes 79 2
https://www.dominatingtennis.com/chapters/first-step
First step & push-off · Dominating Tennis
200 yes 82 2
https://www.dominatingtennis.com/chapters/grips
Grips & grip changes · Dominating Tennis
200 yes 81 2
https://www.dominatingtennis.com/chapters/how-scoring-works
How scoring works · Dominating Tennis
200 yes 80 2
https://www.dominatingtennis.com/chapters/how-spin-is-made
How brushing makes topspin · Dominating Tennis
200 yes 80 2
https://www.dominatingtennis.com/chapters/inside-contact
Inside the 4 ms of contact · Dominating Tennis
200 yes 83 2
https://www.dominatingtennis.com/chapters/off-centre-hits
Off-centre hits & shock · Dominating Tennis
200 yes 83 2
https://www.dominatingtennis.com/chapters/pace-vs-spin
Pace vs spin · Dominating Tennis
200 yes 82 2
https://www.dominatingtennis.com/chapters/percentage-tennis
Percentage tennis · Dominating Tennis
200 yes 80 2
https://www.dominatingtennis.com/chapters/placement-and-disguise
Placement & disguise · Dominating Tennis
200 yes 72 2
https://www.dominatingtennis.com/chapters/pronation-and-the-wrist
Pronation & the wrist · Dominating Tennis
200 yes 83 2
https://www.dominatingtennis.com/chapters/racquet-anatomy
Anatomy of a racquet · Dominating Tennis
200 yes 88 2
https://www.dominatingtennis.com/chapters/rally-vs-putaway
The rally ball vs the put-away · Dominating Tennis
200 yes 81 2
https://www.dominatingtennis.com/chapters/recovery-geometry
Recovery & court geometry · Dominating Tennis
200 yes 78 2
https://www.dominatingtennis.com/chapters/return-position
Where to stand · Dominating Tennis
200 yes 79 2
https://www.dominatingtennis.com/chapters/rotation-and-separation
Rotation & shoulder–hip separation · Dominating Tennis
200 yes 82 2
https://www.dominatingtennis.com/chapters/second-serve
The second serve · Dominating Tennis
200 yes 75 2
https://www.dominatingtennis.com/chapters/serve-plus-one
Serve +1 & patterns · Dominating Tennis
200 yes 74 2
https://www.dominatingtennis.com/chapters/serve-spins
Flat, slice & kick · Dominating Tennis
200 yes 76 2
https://www.dominatingtennis.com/chapters/service-motion
The service motion · Dominating Tennis
200 yes 73 2
https://www.dominatingtennis.com/chapters/split-read-commit
Split, read & commit · Dominating Tennis
200 yes 79 2
https://www.dominatingtennis.com/chapters/split-step
The split step · Dominating Tennis
200 yes 80 2
https://www.dominatingtennis.com/chapters/stances-and-sliding
Stances & sliding · Dominating Tennis
200 yes 75 2
https://www.dominatingtennis.com/chapters/string-bed
The string bed: tension & snapback · Dominating Tennis
200 yes 94 2
https://www.dominatingtennis.com/chapters/sweet-spot
The sweet spot & the trampoline effect · Dominating Tennis
200 yes 88 2
https://www.dominatingtennis.com/chapters/taking-time-away
Taking time away · Dominating Tennis
200 yes 77 2
https://www.dominatingtennis.com/chapters/the-approach
The approach shot · Dominating Tennis
200 yes 83 2
https://www.dominatingtennis.com/chapters/the-ball
The ball: felt, pressure & bounce · Dominating Tennis
200 yes 84 2
https://www.dominatingtennis.com/chapters/the-court
The court & its lines · Dominating Tennis
200 yes 80 2
https://www.dominatingtennis.com/chapters/the-forehand
The forehand · Dominating Tennis
200 yes 3484 2
https://www.dominatingtennis.com/chapters/the-half-volley
The half-volley · Dominating Tennis
200 yes 78 2
https://www.dominatingtennis.com/chapters/the-overhead
The overhead · Dominating Tennis
200 yes 80 2
https://www.dominatingtennis.com/chapters/the-rules
The rules that decide points · Dominating Tennis
200 yes 79 2
https://www.dominatingtennis.com/chapters/the-slice
The slice · Dominating Tennis
200 yes 76 2
https://www.dominatingtennis.com/chapters/the-toss
The toss: the hidden variable · Dominating Tennis
200 yes 77 2
https://www.dominatingtennis.com/chapters/the-volley
The volley · Dominating Tennis
200 yes 76 2
https://www.dominatingtennis.com/chapters/the-whip
The whip: lag & release · Dominating Tennis
200 yes 82 2
https://www.dominatingtennis.com/chapters/two-handed-backhand
The two-handed backhand · Dominating Tennis
200 yes 77 2

Audit your own site — free

157 checks, internal PageRank, render-diff. No signup, results in ~30s.

Scan your site →