Catalog / lindseysnavely.com
61

SEO audit for lindseysnavely.com

Portfolio | LSP

portfolioWix

Health 61/100 (fair) · 37 pages crawled · generated 2026-08-26

Download Markdown report (feed to ChatGPT / Claude / Cursor)
Screenshot of lindseysnavely.com
37
pages crawled
33
indexable pages
4
errors
91
warnings
262
notices
0
orphan pages
0
broken links
Category breakdown
CategoryScoreErrorsWarningsNotices
Structured Data 89 4 0 29
Content 79 0 26 37
Headings 79 0 26 0
Meta Description 81 0 23 5
Agent Readiness 96 0 5 2
Budget 97 0 4 0
Indexability 97 0 4 0
Duplicate 98 0 2 3
Rendering 99 0 1 0
Cache 100 0 0 1
Images 100 0 0 19
Links 100 0 0 7
Performance 100 0 0 81
Security 100 0 0 37
Sitemap 100 0 0 1
Social 100 0 0 26
Titles 100 0 0 14
Findings

Errors (1 rules)

error JSON-LD block missing @context or @type

Rule schema.no_context_type · Structured Data · 4 occurrence(s)

Warnings (8 rules)

warning Control has no accessible name

Rule agent.control_no_name · Agent Readiness · 5 occurrence(s)

warning Noindex page receives internal links (crawl-budget waste)

Rule budget.noindex_linked · Budget · 4 occurrence(s)

  • https://www.lindseysnavely.com/booking-calendar/family-photography — this noindex page has 1 internal inlink(s) — Googlebot follows them, fetches the page, then drops it unindexed, spending crawl budget for no indexing benefit (and the links leak equity). Remove/redirect the links, or drop the noindex if the page should be indexed. Linked from: https://www.lindseysnavely.com/book-a-session.
  • https://www.lindseysnavely.com/booking-calendar/maternity-portraits — this noindex page has 1 internal inlink(s) — Googlebot follows them, fetches the page, then drops it unindexed, spending crawl budget for no indexing benefit (and the links leak equity). Remove/redirect the links, or drop the noindex if the page should be indexed. Linked from: https://www.lindseysnavely.com/book-a-session.
  • https://www.lindseysnavely.com/booking-calendar/portraits-in-studio-womens — this noindex page has 1 internal inlink(s) — Googlebot follows them, fetches the page, then drops it unindexed, spending crawl budget for no indexing benefit (and the links leak equity). Remove/redirect the links, or drop the noindex if the page should be indexed. Linked from: https://www.lindseysnavely.com/book-a-session.
  • https://www.lindseysnavely.com/booking-calendar/portraits-on-location — this noindex page has 1 internal inlink(s) — Googlebot follows them, fetches the page, then drops it unindexed, spending crawl budget for no indexing benefit (and the links leak equity). Remove/redirect the links, or drop the noindex if the page should be indexed. Linked from: https://www.lindseysnavely.com/book-a-session.

warning Thin content (low word count)

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

warning Duplicate <title> across pages

Rule duplicate.title · Duplicate · 2 occurrence(s)

warning Page is noindex

Rule index.noindex · Indexability · 4 occurrence(s)

warning Content only rendered by JavaScript (invisible to non-JS crawlers & AI)

Rule rendering.js_shell · Rendering · 1 occurrence(s)

  • https://www.lindseysnavely.com/profile/lindsey/profile — Raw HTML has 0 words and 0 links — this page is built by JavaScript in the browser. Googlebot renders JS but delays it, and most crawlers and AI assistants (ChatGPT, Perplexity, Claude) don't run JavaScript at all, so to them the page looks empty. Server-render or pre-render your main content and navigation.

Notices (21 rules)

notice Heading levels skip a level

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

notice Page served uncached (no-store/private or CDN bypass)

Rule cache.not_cacheable · Cache · 1 occurrence(s)

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

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

  • https://www.lindseysnavely.com/blog-1/categories/investment — this page reads as difficult (Flesch Reading Ease 37, 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.
  • https://www.lindseysnavely.com/book-a-session — this page reads as difficult (Flesch Reading Ease 33, 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.
  • https://www.lindseysnavely.com/hi-there — this page reads as difficult (Flesch Reading Ease 41, 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.
  • https://www.lindseysnavely.com/post/so-much-more-than-a-box — this page reads as difficult (Flesch Reading Ease 50, 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.
  • https://www.lindseysnavely.com/service-page/maternity-portraits — this page reads as difficult (Flesch Reading Ease 39, 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 Likely hero image lacks fetchpriority=high

Rule images.hero_no_fetchpriority · Performance · 1 occurrence(s)

  • https://www.lindseysnavely.com/hi-there — the likely hero/LCP image (bc3ec7bc825c4e6ca746c659189cea83.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.

notice Images without width/height (layout shift / CLS)

Rule images.missing_dimensions · Images · 19 occurrence(s)

notice Internal link has no anchor text / accessible name

Rule links.no_anchor_text · Links · 2 occurrence(s)

notice Page has only one internal inlink (fragile crawl path)

Rule links.single_inlink · Links · 5 occurrence(s)

notice Meta description too short

Rule meta_desc.too_short · Meta Description · 1 occurrence(s)

notice Missing Open Graph tags

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

notice Legacy image format (jpg/png/gif) with no next-gen fallback

Rule perf.images_legacy_format · Performance · 36 occurrence(s)

  • https://www.lindseysnavely.com/ — 30 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/blog-1 — 12 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/blog-1/categories/the-portrait-experience — 5 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/book-a-session — 9 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/booking-calendar/maternity-portraits — 5 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/children-babies — 30 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/client-area-1 — 17 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/contact — 5 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/couples — 19 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/family — 21 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/hi-there — 7 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/members — 5 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/personal-branding — 21 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/portfolio-1 — 5 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/portraits — 30 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/post/so-much-more-than-a-box — 8 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/privacy — 5 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/real-estate — 30 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/reviews — 9 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/service-page/family-photography — 7 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/services-products — 9 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/sports — 13 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/the-experience — 5 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/the-studio — 5 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.lindseysnavely.com/transformations — 5 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.

notice No ETag header (no conditional GET for unchanged pages)

Rule perf.no_etag · Performance · 1 occurrence(s)

  • https://www.lindseysnavely.com/client-area-1 — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.

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

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

  • https://www.lindseysnavely.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.lindseysnavely.com/blog-1 — 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.lindseysnavely.com/blog-1/categories/the-portrait-experience — 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.lindseysnavely.com/book-a-session — 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.lindseysnavely.com/children-babies — 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.lindseysnavely.com/client-area-1 — 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.lindseysnavely.com/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.lindseysnavely.com/couples — 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.lindseysnavely.com/family — 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.lindseysnavely.com/hi-there — 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.lindseysnavely.com/members — 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.lindseysnavely.com/personal-branding — 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.lindseysnavely.com/portfolio-1 — 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.lindseysnavely.com/portraits — 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.lindseysnavely.com/post/so-much-more-than-a-box — 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.lindseysnavely.com/privacy — 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.lindseysnavely.com/profile/lindsey/profile — 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.lindseysnavely.com/real-estate — 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.lindseysnavely.com/reviews — 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.lindseysnavely.com/service-page/family-photography — 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.lindseysnavely.com/services-products — 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.lindseysnavely.com/sports — 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.lindseysnavely.com/the-experience — 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.lindseysnavely.com/the-studio — 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.lindseysnavely.com/transformations — 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 Indexable page not listed in sitemap

Rule sitemap.orphan_not_listed · Sitemap · 1 occurrence(s)

notice Title tag is identical to the H1 (missed keyword variation)

Rule title.same_as_h1 · Titles · 3 occurrence(s)

Pages (showing 37 of 37)
URLStatusIndexableWordsIn-links
https://www.lindseysnavely.com/blog-1
Blog | LSP
200 yes 1511 36
https://www.lindseysnavely.com/children-babies
Children & Babies | LSP
200 yes 53 36
https://www.lindseysnavely.com/client-area-1
Client Area | LSP
200 yes 55 36
https://www.lindseysnavely.com/contact
Contact | LSP
200 yes 69 36
https://www.lindseysnavely.com/couples
Couples | LSP
200 yes 53 36
https://www.lindseysnavely.com/family
Family | LSP
200 yes 53 36
https://www.lindseysnavely.com/hi-there
Hi There! | LSP
200 yes 172 36
https://www.lindseysnavely.com/members
Members | LSP
200 yes 53 36
https://www.lindseysnavely.com/personal-branding
Personal Branding | LSP
200 yes 53 36
https://www.lindseysnavely.com/portfolio-1
Portfolio | LSP
200 yes 53 36
https://www.lindseysnavely.com/portraits
Portraits | LSP
200 yes 53 36
https://www.lindseysnavely.com/privacy
Privacy Policy | LSP
200 yes 68 36
https://www.lindseysnavely.com/real-estate
Real Estate | LSP
200 yes 53 36
https://www.lindseysnavely.com/reviews
Reviews | LSP
200 yes 222 36
https://www.lindseysnavely.com/services-products
Services & Products | LSP
200 yes 399 36
https://www.lindseysnavely.com/sports
Sports | LSP
200 yes 53 36
https://www.lindseysnavely.com/the-experience
The Experience | LSP
200 yes 290 36
https://www.lindseysnavely.com/the-studio
The Studio | LSP
200 yes 55 36
https://www.lindseysnavely.com/transformations
Transformations | LSP
200 yes 55 36
https://www.lindseysnavely.com/blog-1/categories/investment
Investment
200 yes 127 8
https://www.lindseysnavely.com/blog-1/categories/the-portrait-experience
The Portrait Experience
200 yes 79 8
https://www.lindseysnavely.com/blog-1/categories/tips-tricks
Tips & Tricks
200 yes 79 8
https://www.lindseysnavely.com/blog-1/categories/what-to-wear
What To Wear
200 yes 79 8
https://www.lindseysnavely.com/
Portfolio | LSP
200 yes 53 6
https://www.lindseysnavely.com/profile/lindsey/profile
LSP
200 yes 0 5
https://www.lindseysnavely.com/post/so-much-more-than-a-box
So Much More Than A Box
200 yes 310 4
https://www.lindseysnavely.com/post/why-invest-in-professional-portraits
Why Invest In Professional Portraits?
200 yes 1002 4
https://www.lindseysnavely.com/post/what-to-wear-women-s-portraits
What to Wear - Women's Portraits
200 yes 367 1
https://www.lindseysnavely.com/book-a-session
Book a Session | LSP
200 yes 120 4
https://www.lindseysnavely.com/booking-calendar/family-photography
Family Photography - LSP
200 no 70 1
https://www.lindseysnavely.com/booking-calendar/maternity-portraits
Maternity Portraits - LSP
200 no 70 1
https://www.lindseysnavely.com/booking-calendar/portraits-in-studio-womens
Portraits (In Studio) - Womens - LSP
200 no 70 1
https://www.lindseysnavely.com/booking-calendar/portraits-on-location
Portraits (On Location) - LSP
200 no 70 1
https://www.lindseysnavely.com/service-page/family-photography
Family Photography | LSP
200 yes 95 1
https://www.lindseysnavely.com/service-page/maternity-portraits
Maternity Portraits | LSP
200 yes 105 1
https://www.lindseysnavely.com/service-page/portraits-in-studio-womens
Portraits (In Studio) - Womens | LSP
200 yes 94 1
https://www.lindseysnavely.com/service-page/portraits-on-location
Portraits (On Location) | LSP
200 yes 96 1

Audit your own site — free

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

Scan your site →