SEO audit for gabriella-klein.com
gabriella klein
Health 66/100 (fair) · 34 pages crawled · generated 2026-08-26
Download Markdown report (feed to ChatGPT / Claude / Cursor)Gabriella Klein online art website
| Category | Score | Errors | Warnings | Notices |
|---|---|---|---|---|
| Canonical | 71 | 0 | 33 | 0 |
| Headings | 72 | 0 | 32 | 0 |
| Images | 73 | 0 | 31 | 0 |
| Agent Readiness | 77 | 0 | 26 | 2 |
| Content | 77 | 0 | 26 | 10 |
| Duplicate | 96 | 0 | 5 | 33 |
| Links | 100 | 0 | 0 | 26 |
| Meta Description | 100 | 0 | 0 | 33 |
| Mobile | 100 | 0 | 0 | 33 |
| Performance | 100 | 0 | 0 | 101 |
| Security | 100 | 0 | 0 | 66 |
| Sitemap | 100 | 0 | 0 | 6 |
| Social | 100 | 0 | 0 | 66 |
| Structured Data | 100 | 0 | 0 | 33 |
| Titles | 100 | 0 | 0 | 1 |
Warnings (7 rules)
warning Control has no accessible name
Rule agent.control_no_name · Agent Readiness · 26 occurrence(s)
- https://gabriella-klein.com/about — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/blog/hockneyeffect — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/blog/p8gallery — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/projects/2473200 — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/projects/2473232 — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/projects/2473236 — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/projects/2473244 — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/projects/2473267 — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/projects/2882242 — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/projects/4321220 — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/projects/4682342 — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/projects/5916965 — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/projects/5970026 — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/projects/6775183 — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/projects/7163808 — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/projects/7175052 — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/projects/7190114 — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/projects/7238987 — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/projects/7242404 — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/projects/7257865 — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/projects/7274924 — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/projects/7275460 — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/projects/7279704 — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/projects/7279705 — 1 button/link(s) with no text or aria-label — an agent can't target them
- https://gabriella-klein.com/projects/7280758 — 1 button/link(s) with no text or aria-label — an agent can't target them
warning Missing canonical tag
Rule canonical.missing · Canonical · 33 occurrence(s)
- https://gabriella-klein.com/
- https://gabriella-klein.com/about
- https://gabriella-klein.com/blog
- https://gabriella-klein.com/blog/6609618510043676685
- https://gabriella-klein.com/projects/2473200
- https://gabriella-klein.com/projects/2473232
- https://gabriella-klein.com/projects/2882242
- https://gabriella-klein.com/projects/4321220
- https://gabriella-klein.com/projects/4682342
- https://gabriella-klein.com/projects/5916965
- https://gabriella-klein.com/projects/5970026
- https://gabriella-klein.com/projects/6775183
- https://gabriella-klein.com/projects/7111717
- https://gabriella-klein.com/projects/7163808
- https://gabriella-klein.com/projects/7175052
- https://gabriella-klein.com/projects/7190114
- https://gabriella-klein.com/projects/7238987
- https://gabriella-klein.com/projects/7242404
- https://gabriella-klein.com/projects/7257865
- https://gabriella-klein.com/projects/7265982
- https://gabriella-klein.com/projects/7274924
- https://gabriella-klein.com/projects/7275460
- https://gabriella-klein.com/projects/7279704
- https://gabriella-klein.com/projects/7279705
- https://gabriella-klein.com/projects/7280758
warning Thin content (low word count)
Rule content.thin · Content · 26 occurrence(s)
- https://gabriella-klein.com/ — 172 words
- https://gabriella-klein.com/about — 19 words
- https://gabriella-klein.com/blog — 47 words
- https://gabriella-klein.com/blog/6605108712778498061 — 24 words
- https://gabriella-klein.com/blog/6609618510043676685 — 20 words
- https://gabriella-klein.com/blog/gabriellaklein — 24 words
- https://gabriella-klein.com/blog/hockneyeffect — 24 words
- https://gabriella-klein.com/blog/p8gallery — 24 words
- https://gabriella-klein.com/projects/2473236 — 152 words
- https://gabriella-klein.com/projects/2473244 — 87 words
- https://gabriella-klein.com/projects/2473267 — 133 words
- https://gabriella-klein.com/projects/2882242 — 145 words
- https://gabriella-klein.com/projects/5970026 — 98 words
- https://gabriella-klein.com/projects/6775183 — 58 words
- https://gabriella-klein.com/projects/7163808 — 106 words
- https://gabriella-klein.com/projects/7175052 — 51 words
- https://gabriella-klein.com/projects/7190114 — 79 words
- https://gabriella-klein.com/projects/7238987 — 39 words
- https://gabriella-klein.com/projects/7257865 — 111 words
- https://gabriella-klein.com/projects/7265982 — 61 words
- https://gabriella-klein.com/projects/7274924 — 137 words
- https://gabriella-klein.com/projects/7275460 — 64 words
- https://gabriella-klein.com/projects/7279704 — 98 words
- https://gabriella-klein.com/projects/7279705 — 135 words
- https://gabriella-klein.com/projects/7280758 — 168 words
warning Homepage duplicated across protocol/host variants (no redirect)
Rule duplicate.protocol_host · Duplicate · 1 occurrence(s)
- https://gabriella-klein.com/ — https://www.gabriella-klein.com/ serves the same homepage content with a 200 and no redirect — Google sees a duplicate. Pick one canonical host/scheme and 301-redirect the others.
warning Duplicate <title> across pages
Rule duplicate.title · Duplicate · 4 occurrence(s)
- https://gabriella-klein.com/blog — title shared by 4 pages: https://gabriella-klein.com/blog/6609618510043676685, https://gabriella-klein.com/blog/6605108712778498061, https://gabriella-klein.com/blog/6580001291743789069
- https://gabriella-klein.com/blog/6580001291743789069 — title shared by 4 pages: https://gabriella-klein.com/blog, https://gabriella-klein.com/blog/6609618510043676685, https://gabriella-klein.com/blog/6605108712778498061
- https://gabriella-klein.com/blog/6605108712778498061 — title shared by 4 pages: https://gabriella-klein.com/blog, https://gabriella-klein.com/blog/6609618510043676685, https://gabriella-klein.com/blog/6580001291743789069
- https://gabriella-klein.com/blog/6609618510043676685 — title shared by 4 pages: https://gabriella-klein.com/blog, https://gabriella-klein.com/blog/6605108712778498061, https://gabriella-klein.com/blog/6580001291743789069
warning Missing <h1>
Rule h1.missing · Headings · 32 occurrence(s)
- https://gabriella-klein.com/about
- https://gabriella-klein.com/blog
- https://gabriella-klein.com/blog/6609618510043676685
- https://gabriella-klein.com/projects/2473200
- https://gabriella-klein.com/projects/2473232
- https://gabriella-klein.com/projects/2473236
- https://gabriella-klein.com/projects/2882242
- https://gabriella-klein.com/projects/4321220
- https://gabriella-klein.com/projects/4682342
- https://gabriella-klein.com/projects/5916965
- https://gabriella-klein.com/projects/5970026
- https://gabriella-klein.com/projects/6775183
- https://gabriella-klein.com/projects/7111717
- https://gabriella-klein.com/projects/7163808
- https://gabriella-klein.com/projects/7175052
- https://gabriella-klein.com/projects/7190114
- https://gabriella-klein.com/projects/7238987
- https://gabriella-klein.com/projects/7242404
- https://gabriella-klein.com/projects/7257865
- https://gabriella-klein.com/projects/7265982
- https://gabriella-klein.com/projects/7274924
- https://gabriella-klein.com/projects/7275460
- https://gabriella-klein.com/projects/7279704
- https://gabriella-klein.com/projects/7279705
- https://gabriella-klein.com/projects/7280758
warning Images missing alt text
Rule images.missing_alt · Images · 31 occurrence(s)
- https://gabriella-klein.com/blog — 4 of 4 images missing alt
- https://gabriella-klein.com/blog/6609618510043676685 — 1 of 1 images missing alt
- https://gabriella-klein.com/projects/2473200 — 10 of 10 images missing alt
- https://gabriella-klein.com/projects/2473232 — 14 of 14 images missing alt
- https://gabriella-klein.com/projects/2473236 — 8 of 8 images missing alt
- https://gabriella-klein.com/projects/2473244 — 8 of 8 images missing alt
- https://gabriella-klein.com/projects/2882242 — 9 of 9 images missing alt
- https://gabriella-klein.com/projects/4321220 — 13 of 13 images missing alt
- https://gabriella-klein.com/projects/4682342 — 11 of 11 images missing alt
- https://gabriella-klein.com/projects/5916965 — 8 of 8 images missing alt
- https://gabriella-klein.com/projects/5970026 — 8 of 8 images missing alt
- https://gabriella-klein.com/projects/6775183 — 12 of 12 images missing alt
- https://gabriella-klein.com/projects/7111717 — 46 of 46 images missing alt
- https://gabriella-klein.com/projects/7163808 — 21 of 21 images missing alt
- https://gabriella-klein.com/projects/7175052 — 1 of 1 images missing alt
- https://gabriella-klein.com/projects/7190114 — 4 of 4 images missing alt
- https://gabriella-klein.com/projects/7238987 — 4 of 4 images missing alt
- https://gabriella-klein.com/projects/7242404 — 14 of 14 images missing alt
- https://gabriella-klein.com/projects/7257865 — 11 of 11 images missing alt
- https://gabriella-klein.com/projects/7265982 — 4 of 4 images missing alt
- https://gabriella-klein.com/projects/7274924 — 20 of 20 images missing alt
- https://gabriella-klein.com/projects/7275460 — 4 of 4 images missing alt
- https://gabriella-klein.com/projects/7279704 — 7 of 7 images missing alt
- https://gabriella-klein.com/projects/7279705 — 11 of 11 images missing alt
- https://gabriella-klein.com/projects/7280758 — 10 of 10 images missing alt
Notices (18 rules)
notice Heading levels skip a level
Rule agent.heading_skip · Agent Readiness · 1 occurrence(s)
- https://gabriella-klein.com/ — h3 follows h1 — skips h2
notice No llms.txt for AI agents
Rule agent.llms_txt_missing · Agent Readiness · 1 occurrence(s)
- https://gabriella-klein.com/ — no llms.txt found at the site root — add one so AI agents get a curated site summary
notice Main text is hard to read (low Flesch Reading Ease)
Rule content.readability_poor · Content · 10 occurrence(s)
- https://gabriella-klein.com/ — this page reads as very difficult (Flesch Reading Ease -92, 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://gabriella-klein.com/projects/2473200 — this page reads as difficult (Flesch Reading Ease 46, 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://gabriella-klein.com/projects/2473236 — this page reads as difficult (Flesch Reading Ease 48, 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://gabriella-klein.com/projects/2882242 — 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.
- https://gabriella-klein.com/projects/4682342 — this page reads as very difficult (Flesch Reading Ease 16, 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://gabriella-klein.com/projects/5916965 — this page reads as difficult (Flesch Reading Ease 34, 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://gabriella-klein.com/projects/7242404 — this page reads as difficult (Flesch Reading Ease 46, 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://gabriella-klein.com/projects/7257865 — this page reads as very difficult (Flesch Reading Ease 29, 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://gabriella-klein.com/projects/7279705 — 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://gabriella-klein.com/projects/7280758 — this page reads as difficult (Flesch Reading Ease 35, 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 · 33 occurrence(s)
- https://gabriella-klein.com/ — meta description shared by 33 pages: https://gabriella-klein.com/about, https://gabriella-klein.com/blog, https://gabriella-klein.com/projects/7111717
- https://gabriella-klein.com/about — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/blog, https://gabriella-klein.com/projects/7111717
- https://gabriella-klein.com/blog — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/projects/7111717
- https://gabriella-klein.com/blog/6609618510043676685 — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/blog
- https://gabriella-klein.com/projects/2473200 — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/blog
- https://gabriella-klein.com/projects/2473232 — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/blog
- https://gabriella-klein.com/projects/2882242 — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/blog
- https://gabriella-klein.com/projects/4321220 — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/blog
- https://gabriella-klein.com/projects/4682342 — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/blog
- https://gabriella-klein.com/projects/5916965 — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/blog
- https://gabriella-klein.com/projects/5970026 — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/blog
- https://gabriella-klein.com/projects/6775183 — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/blog
- https://gabriella-klein.com/projects/7111717 — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/blog
- https://gabriella-klein.com/projects/7163808 — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/blog
- https://gabriella-klein.com/projects/7175052 — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/blog
- https://gabriella-klein.com/projects/7190114 — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/blog
- https://gabriella-klein.com/projects/7238987 — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/blog
- https://gabriella-klein.com/projects/7242404 — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/blog
- https://gabriella-klein.com/projects/7257865 — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/blog
- https://gabriella-klein.com/projects/7265982 — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/blog
- https://gabriella-klein.com/projects/7274924 — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/blog
- https://gabriella-klein.com/projects/7275460 — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/blog
- https://gabriella-klein.com/projects/7279704 — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/blog
- https://gabriella-klein.com/projects/7279705 — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/blog
- https://gabriella-klein.com/projects/7280758 — meta description shared by 33 pages: https://gabriella-klein.com/, https://gabriella-klein.com/about, https://gabriella-klein.com/blog
notice Missing html lang attribute
Rule i18n.lang_missing · Mobile · 33 occurrence(s)
- https://gabriella-klein.com/
- https://gabriella-klein.com/about
- https://gabriella-klein.com/blog
- https://gabriella-klein.com/blog/6609618510043676685
- https://gabriella-klein.com/projects/2473200
- https://gabriella-klein.com/projects/2473232
- https://gabriella-klein.com/projects/2882242
- https://gabriella-klein.com/projects/4321220
- https://gabriella-klein.com/projects/4682342
- https://gabriella-klein.com/projects/5916965
- https://gabriella-klein.com/projects/5970026
- https://gabriella-klein.com/projects/6775183
- https://gabriella-klein.com/projects/7111717
- https://gabriella-klein.com/projects/7163808
- https://gabriella-klein.com/projects/7175052
- https://gabriella-klein.com/projects/7190114
- https://gabriella-klein.com/projects/7238987
- https://gabriella-klein.com/projects/7242404
- https://gabriella-klein.com/projects/7257865
- https://gabriella-klein.com/projects/7265982
- https://gabriella-klein.com/projects/7274924
- https://gabriella-klein.com/projects/7275460
- https://gabriella-klein.com/projects/7279704
- https://gabriella-klein.com/projects/7279705
- https://gabriella-klein.com/projects/7280758
notice Likely hero image lacks fetchpriority=high
Rule images.hero_no_fetchpriority · Performance · 31 occurrence(s)
- https://gabriella-klein.com/blog — the likely hero/LCP image (9tdh7c4kuhreoz1fbzlxrd;700x1304.jpeg) 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.
- https://gabriella-klein.com/blog/6609618510043676685 — the likely hero/LCP image (9tdh7c4kuhreoz1fbzlxrd;700x1304.jpeg) 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.
- https://gabriella-klein.com/projects/2473200 — the likely hero/LCP image (es1ptfmtf46d2pzn8rcid6;850x584.jpeg) 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.
- https://gabriella-klein.com/projects/2473232 — the likely hero/LCP image (5aalunzu1jxcqxzdlrz1zz;960x640.jpeg) 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.
- https://gabriella-klein.com/projects/2473236 — the likely hero/LCP image (4aypvqpd6cifhqadavmzcf;652x652.jpeg) 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.
- https://gabriella-klein.com/projects/2473244 — the likely hero/LCP image (ldr7xijvzr9ddznnbpz2cg;960x640.jpeg) 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.
- https://gabriella-klein.com/projects/2882242 — the likely hero/LCP image (5c6iauf8nrmcik43yks2xu;538x600.jpeg) 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.
- https://gabriella-klein.com/projects/4321220 — the likely hero/LCP image (0rclqbgypdibqnrge6rf4b;960x719.jpeg) 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.
- https://gabriella-klein.com/projects/4682342 — the likely hero/LCP image (9a3kurntuhsg84f23rzpdv;960x639.jpeg) 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.
- https://gabriella-klein.com/projects/5916965 — the likely hero/LCP image (5poq7jtjlnoeo03mnl1wcf;960x640.jpeg) 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.
- https://gabriella-klein.com/projects/5970026 — the likely hero/LCP image (8sci9dczex1btge2p0esxz;716x850.jpeg) 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.
- https://gabriella-klein.com/projects/6775183 — the likely hero/LCP image (himb16airenbuoyhl4j2rr;960x696.jpeg) 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.
- https://gabriella-klein.com/projects/7111717 — the likely hero/LCP image (dhpclbwu2mjdnjec8mj471;427x289.jpeg) 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.
- https://gabriella-klein.com/projects/7163808 — the likely hero/LCP image (gopxhdevptefm5cbkoivoa;414x591.jpeg) 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.
- https://gabriella-klein.com/projects/7175052 — the likely hero/LCP image (kiygvfw4lmzcb0kcylcjsk;960x725.jpeg) 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.
- https://gabriella-klein.com/projects/7190114 — the likely hero/LCP image (admqqgvztarcm7wzz784l0;960x923.jpeg) 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.
- https://gabriella-klein.com/projects/7238987 — the likely hero/LCP image (ejtgptlfcxudrbbcesc3fl;960x624.jpeg) 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.
- https://gabriella-klein.com/projects/7242404 — the likely hero/LCP image (5trzbe6onveeqncnifyjlb;960x640.jpeg) 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.
- https://gabriella-klein.com/projects/7257865 — the likely hero/LCP image (jp0fspcqknzegfym82l67x;960x639.jpeg) 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.
- https://gabriella-klein.com/projects/7265982 — the likely hero/LCP image (6ijhndnr8vycgp4cxkqoyl;960x639.jpeg) 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.
- https://gabriella-klein.com/projects/7274924 — the likely hero/LCP image (2yfxtizqmy6eqmtviwkatv;960x640.jpeg) 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.
- https://gabriella-klein.com/projects/7275460 — the likely hero/LCP image (c3r4l8vjpaifz9nzbiz6kl;960x710.jpeg) 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.
- https://gabriella-klein.com/projects/7279704 — the likely hero/LCP image (kc0a9ezugprdbnjvd1q7qm;960x1439.jpeg) 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.
- https://gabriella-klein.com/projects/7279705 — the likely hero/LCP image (ivk5e0iuf1rfoebkgvlicc;960x913.jpeg) 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.
- https://gabriella-klein.com/projects/7280758 — the likely hero/LCP image (6b23reldsyvdhcxtj7thga;960x1200.jpeg) 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 Internal link has no anchor text / accessible name
Rule links.no_anchor_text · Links · 26 occurrence(s)
- https://gabriella-klein.com/about — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/blog/hockneyeffect — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/blog/p8gallery — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/projects/2473200 — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/projects/2473232 — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/projects/2473236 — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/projects/2473244 — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/projects/2473267 — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/projects/2882242 — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/projects/4321220 — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/projects/4682342 — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/projects/5916965 — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/projects/5970026 — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/projects/6775183 — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/projects/7163808 — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/projects/7175052 — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/projects/7190114 — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/projects/7238987 — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/projects/7242404 — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/projects/7257865 — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/projects/7274924 — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/projects/7275460 — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/projects/7279704 — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/projects/7279705 — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
- https://gabriella-klein.com/projects/7280758 — 1 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
notice Meta description too short
Rule meta_desc.too_short · Meta Description · 33 occurrence(s)
- https://gabriella-klein.com/ — 34 chars
- https://gabriella-klein.com/about — 34 chars
- https://gabriella-klein.com/blog — 34 chars
- https://gabriella-klein.com/blog/6609618510043676685 — 34 chars
- https://gabriella-klein.com/projects/2473200 — 34 chars
- https://gabriella-klein.com/projects/2473232 — 34 chars
- https://gabriella-klein.com/projects/2882242 — 34 chars
- https://gabriella-klein.com/projects/4321220 — 34 chars
- https://gabriella-klein.com/projects/4682342 — 34 chars
- https://gabriella-klein.com/projects/5916965 — 34 chars
- https://gabriella-klein.com/projects/5970026 — 34 chars
- https://gabriella-klein.com/projects/6775183 — 34 chars
- https://gabriella-klein.com/projects/7111717 — 34 chars
- https://gabriella-klein.com/projects/7163808 — 34 chars
- https://gabriella-klein.com/projects/7175052 — 34 chars
- https://gabriella-klein.com/projects/7190114 — 34 chars
- https://gabriella-klein.com/projects/7238987 — 34 chars
- https://gabriella-klein.com/projects/7242404 — 34 chars
- https://gabriella-klein.com/projects/7257865 — 34 chars
- https://gabriella-klein.com/projects/7265982 — 34 chars
- https://gabriella-klein.com/projects/7274924 — 34 chars
- https://gabriella-klein.com/projects/7275460 — 34 chars
- https://gabriella-klein.com/projects/7279704 — 34 chars
- https://gabriella-klein.com/projects/7279705 — 34 chars
- https://gabriella-klein.com/projects/7280758 — 34 chars
notice Missing Open Graph tags
Rule og.missing · Social · 33 occurrence(s)
- https://gabriella-klein.com/ — og:title, og:image
- https://gabriella-klein.com/about — og:title, og:description, og:image
- https://gabriella-klein.com/blog — og:title, og:description, og:image
- https://gabriella-klein.com/blog/6609618510043676685 — og:title, og:description, og:image
- https://gabriella-klein.com/projects/2473200 — og:description
- https://gabriella-klein.com/projects/2473232 — og:description
- https://gabriella-klein.com/projects/2882242 — og:description
- https://gabriella-klein.com/projects/4321220 — og:description
- https://gabriella-klein.com/projects/4682342 — og:description
- https://gabriella-klein.com/projects/5916965 — og:description
- https://gabriella-klein.com/projects/5970026 — og:description
- https://gabriella-klein.com/projects/6775183 — og:description
- https://gabriella-klein.com/projects/7111717 — og:description
- https://gabriella-klein.com/projects/7163808 — og:description
- https://gabriella-klein.com/projects/7175052 — og:description
- https://gabriella-klein.com/projects/7190114 — og:description
- https://gabriella-klein.com/projects/7238987 — og:description
- https://gabriella-klein.com/projects/7242404 — og:description
- https://gabriella-klein.com/projects/7257865 — og:description
- https://gabriella-klein.com/projects/7265982 — og:description
- https://gabriella-klein.com/projects/7274924 — og:description
- https://gabriella-klein.com/projects/7275460 — og:description
- https://gabriella-klein.com/projects/7279704 — og:description
- https://gabriella-klein.com/projects/7279705 — og:description
- https://gabriella-klein.com/projects/7280758 — og:description
notice Legacy image format (jpg/png/gif) with no next-gen fallback
Rule perf.images_legacy_format · Performance · 31 occurrence(s)
- https://gabriella-klein.com/blog — 4 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://gabriella-klein.com/blog/6609618510043676685 — 1 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://gabriella-klein.com/projects/2473200 — 10 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://gabriella-klein.com/projects/2473232 — 14 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://gabriella-klein.com/projects/2473236 — 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://gabriella-klein.com/projects/2473244 — 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://gabriella-klein.com/projects/2882242 — 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://gabriella-klein.com/projects/4321220 — 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://gabriella-klein.com/projects/4682342 — 11 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://gabriella-klein.com/projects/5916965 — 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://gabriella-klein.com/projects/5970026 — 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://gabriella-klein.com/projects/6775183 — 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://gabriella-klein.com/projects/7111717 — 46 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://gabriella-klein.com/projects/7163808 — 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://gabriella-klein.com/projects/7175052 — 1 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://gabriella-klein.com/projects/7190114 — 4 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://gabriella-klein.com/projects/7238987 — 4 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://gabriella-klein.com/projects/7242404 — 14 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://gabriella-klein.com/projects/7257865 — 11 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://gabriella-klein.com/projects/7265982 — 4 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://gabriella-klein.com/projects/7274924 — 20 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://gabriella-klein.com/projects/7275460 — 4 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://gabriella-klein.com/projects/7279704 — 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://gabriella-klein.com/projects/7279705 — 11 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://gabriella-klein.com/projects/7280758 — 10 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 · 6 occurrence(s)
- https://gabriella-klein.com/blog/6580001291743789069 — 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.
- https://gabriella-klein.com/blog/6605108712778498061 — 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.
- https://gabriella-klein.com/blog/6609618510043676685 — 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.
- https://gabriella-klein.com/blog/gabriellaklein — 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.
- https://gabriella-klein.com/blog/hockneyeffect — 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.
- https://gabriella-klein.com/blog/p8gallery — 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 · 33 occurrence(s)
- https://gabriella-klein.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://gabriella-klein.com/about — 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://gabriella-klein.com/blog — 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://gabriella-klein.com/blog/6609618510043676685 — 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://gabriella-klein.com/projects/2473200 — 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://gabriella-klein.com/projects/2473232 — 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://gabriella-klein.com/projects/2882242 — 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://gabriella-klein.com/projects/4321220 — 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://gabriella-klein.com/projects/4682342 — 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://gabriella-klein.com/projects/5916965 — 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://gabriella-klein.com/projects/5970026 — 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://gabriella-klein.com/projects/6775183 — 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://gabriella-klein.com/projects/7111717 — 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://gabriella-klein.com/projects/7163808 — 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://gabriella-klein.com/projects/7175052 — 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://gabriella-klein.com/projects/7190114 — 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://gabriella-klein.com/projects/7238987 — 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://gabriella-klein.com/projects/7242404 — 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://gabriella-klein.com/projects/7257865 — 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://gabriella-klein.com/projects/7265982 — 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://gabriella-klein.com/projects/7274924 — 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://gabriella-klein.com/projects/7275460 — 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://gabriella-klein.com/projects/7279704 — 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://gabriella-klein.com/projects/7279705 — 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://gabriella-klein.com/projects/7280758 — 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 No structured data detected
Rule schema.none · Structured Data · 33 occurrence(s)
- https://gabriella-klein.com/
- https://gabriella-klein.com/about
- https://gabriella-klein.com/blog
- https://gabriella-klein.com/blog/6609618510043676685
- https://gabriella-klein.com/projects/2473200
- https://gabriella-klein.com/projects/2473232
- https://gabriella-klein.com/projects/2882242
- https://gabriella-klein.com/projects/4321220
- https://gabriella-klein.com/projects/4682342
- https://gabriella-klein.com/projects/5916965
- https://gabriella-klein.com/projects/5970026
- https://gabriella-klein.com/projects/6775183
- https://gabriella-klein.com/projects/7111717
- https://gabriella-klein.com/projects/7163808
- https://gabriella-klein.com/projects/7175052
- https://gabriella-klein.com/projects/7190114
- https://gabriella-klein.com/projects/7238987
- https://gabriella-klein.com/projects/7242404
- https://gabriella-klein.com/projects/7257865
- https://gabriella-klein.com/projects/7265982
- https://gabriella-klein.com/projects/7274924
- https://gabriella-klein.com/projects/7275460
- https://gabriella-klein.com/projects/7279704
- https://gabriella-klein.com/projects/7279705
- https://gabriella-klein.com/projects/7280758
notice Missing recommended security headers
Rule security.missing_headers · Security · 33 occurrence(s)
- https://gabriella-klein.com/ — CSP, X-Content-Type-Options
- https://gabriella-klein.com/about — HSTS, CSP, X-Content-Type-Options
- https://gabriella-klein.com/blog — HSTS, CSP, X-Content-Type-Options
- https://gabriella-klein.com/blog/6609618510043676685 — HSTS, CSP, X-Content-Type-Options
- https://gabriella-klein.com/projects/2473200 — X-Content-Type-Options, HSTS, CSP
- https://gabriella-klein.com/projects/2473232 — HSTS, CSP, X-Content-Type-Options
- https://gabriella-klein.com/projects/2882242 — HSTS, CSP, X-Content-Type-Options
- https://gabriella-klein.com/projects/4321220 — HSTS, CSP, X-Content-Type-Options
- https://gabriella-klein.com/projects/4682342 — CSP, X-Content-Type-Options, HSTS
- https://gabriella-klein.com/projects/5916965 — X-Content-Type-Options, HSTS, CSP
- https://gabriella-klein.com/projects/5970026 — HSTS, CSP, X-Content-Type-Options
- https://gabriella-klein.com/projects/6775183 — X-Content-Type-Options, HSTS, CSP
- https://gabriella-klein.com/projects/7111717 — HSTS, CSP, X-Content-Type-Options
- https://gabriella-klein.com/projects/7163808 — CSP, X-Content-Type-Options, HSTS
- https://gabriella-klein.com/projects/7175052 — HSTS, CSP, X-Content-Type-Options
- https://gabriella-klein.com/projects/7190114 — CSP, X-Content-Type-Options, HSTS
- https://gabriella-klein.com/projects/7238987 — HSTS, CSP, X-Content-Type-Options
- https://gabriella-klein.com/projects/7242404 — HSTS, CSP, X-Content-Type-Options
- https://gabriella-klein.com/projects/7257865 — HSTS, CSP, X-Content-Type-Options
- https://gabriella-klein.com/projects/7265982 — HSTS, CSP, X-Content-Type-Options
- https://gabriella-klein.com/projects/7274924 — HSTS, CSP, X-Content-Type-Options
- https://gabriella-klein.com/projects/7275460 — HSTS, CSP, X-Content-Type-Options
- https://gabriella-klein.com/projects/7279704 — HSTS, CSP, X-Content-Type-Options
- https://gabriella-klein.com/projects/7279705 — HSTS, CSP, X-Content-Type-Options
- https://gabriella-klein.com/projects/7280758 — HSTS, CSP, X-Content-Type-Options
notice target=_blank link without rel=noopener (tab-napping)
Rule security.unsafe_cross_origin_links · Security · 33 occurrence(s)
- https://gabriella-klein.com/ — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/about — 3 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/blog — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/blog/6609618510043676685 — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/projects/2473200 — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/projects/2473232 — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/projects/2882242 — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/projects/4321220 — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/projects/4682342 — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/projects/5916965 — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/projects/5970026 — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/projects/6775183 — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/projects/7111717 — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/projects/7163808 — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/projects/7175052 — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/projects/7190114 — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/projects/7238987 — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/projects/7242404 — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/projects/7257865 — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/projects/7265982 — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/projects/7274924 — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/projects/7275460 — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/projects/7279704 — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/projects/7279705 — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://gabriella-klein.com/projects/7280758 — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
notice Indexable page not listed in sitemap
Rule sitemap.orphan_not_listed · Sitemap · 6 occurrence(s)
- https://gabriella-klein.com/blog/6580001291743789069 — indexable but not in sitemap
- https://gabriella-klein.com/blog/6605108712778498061 — indexable but not in sitemap
- https://gabriella-klein.com/blog/6609618510043676685 — indexable but not in sitemap
- https://gabriella-klein.com/blog/gabriellaklein — indexable but not in sitemap
- https://gabriella-klein.com/blog/hockneyeffect — indexable but not in sitemap
- https://gabriella-klein.com/blog/p8gallery — indexable but not in sitemap
notice Title tag is identical to the H1 (missed keyword variation)
Rule title.same_as_h1 · Titles · 1 occurrence(s)
- https://gabriella-klein.com/ — the <title> and the H1 are identical — differentiate them to cover more query variation
notice Missing Twitter Card tag
Rule twitter.missing · Social · 33 occurrence(s)
- https://gabriella-klein.com/
- https://gabriella-klein.com/about
- https://gabriella-klein.com/blog
- https://gabriella-klein.com/blog/6609618510043676685
- https://gabriella-klein.com/projects/2473200
- https://gabriella-klein.com/projects/2473232
- https://gabriella-klein.com/projects/2882242
- https://gabriella-klein.com/projects/4321220
- https://gabriella-klein.com/projects/4682342
- https://gabriella-klein.com/projects/5916965
- https://gabriella-klein.com/projects/5970026
- https://gabriella-klein.com/projects/6775183
- https://gabriella-klein.com/projects/7111717
- https://gabriella-klein.com/projects/7163808
- https://gabriella-klein.com/projects/7175052
- https://gabriella-klein.com/projects/7190114
- https://gabriella-klein.com/projects/7238987
- https://gabriella-klein.com/projects/7242404
- https://gabriella-klein.com/projects/7257865
- https://gabriella-klein.com/projects/7265982
- https://gabriella-klein.com/projects/7274924
- https://gabriella-klein.com/projects/7275460
- https://gabriella-klein.com/projects/7279704
- https://gabriella-klein.com/projects/7279705
- https://gabriella-klein.com/projects/7280758
| URL | Status | Indexable | Words | In-links |
|---|---|---|---|---|
| https://gabriella-klein.com/ gabriella klein |
200 | yes | 172 | 33 |
| https://gabriella-klein.com/about About - gabriella klein |
200 | yes | 19 | 33 |
| https://gabriella-klein.com/blog Log - gabriella klein |
200 | yes | 47 | 33 |
| https://gabriella-klein.com/blog/6605108712778498061 Log - gabriella klein |
200 | yes | 24 | 6 |
| https://gabriella-klein.com/blog/gabriellaklein Log #gabriellaklein - gabriella klein |
200 | yes | 24 | 5 |
| https://gabriella-klein.com/blog/hockneyeffect Log #hockneyeffect - gabriella klein |
200 | yes | 24 | 5 |
| https://gabriella-klein.com/blog/p8gallery Log #p8gallery - gabriella klein |
200 | yes | 24 | 5 |
| https://gabriella-klein.com/blog/6580001291743789069 Log - gabriella klein |
200 | yes | 29 | 4 |
| https://gabriella-klein.com/blog/6609618510043676685 Log - gabriella klein |
200 | yes | 20 | 3 |
| https://gabriella-klein.com/projects/2473244 Homescapes 2006 - gabriella klein |
200 | yes | 87 | 3 |
| https://gabriella-klein.com/projects/7280758 Hold, The Cabin LA 2025 - gabriella klein |
200 | yes | 168 | 3 |
| https://gabriella-klein.com/projects/2473236 On the Road 2007 - gabriella klein |
200 | yes | 152 | 3 |
| https://gabriella-klein.com/projects/7279705 Night Train, Petach Tikva Museum of Art 2025 - gabriella klein |
200 | yes | 135 | 3 |
| https://gabriella-klein.com/projects/2473200 The Near Side of the Moon 2009 - gabriella klein |
200 | yes | 385 | 3 |
| https://gabriella-klein.com/projects/7279704 Unveiling, Negev Museum of Art, Beer Sheva 2025 - gabriella klein |
200 | yes | 98 | 3 |
| https://gabriella-klein.com/projects/2882242 Response Time 2012 - gabriella klein |
200 | yes | 145 | 3 |
| https://gabriella-klein.com/projects/7274924 Both Sides, Beeri Gallery, Tel Aviv 2024 - gabriella klein |
200 | yes | 137 | 3 |
| https://gabriella-klein.com/projects/2473232 site specific wall paintings and works on paper - gabriella klein |
200 | yes | 282 | 3 |
| https://gabriella-klein.com/projects/7275460 A Place To Rest, Rehovot Gallery, 20024 - gabriella klein |
200 | yes | 64 | 3 |
| https://gabriella-klein.com/projects/4321220 Smooth Operator 2012 - gabriella klein |
200 | yes | 493 | 3 |
| https://gabriella-klein.com/projects/7257865 NOON, Yaar Gallery, 2023 - gabriella klein |
200 | yes | 111 | 3 |
| https://gabriella-klein.com/projects/5916965 Ashdod Museum of Art 2015 - gabriella klein |
200 | yes | 267 | 3 |
| https://gabriella-klein.com/projects/7242404 Back to Back, Maya Gallery, 2021 - gabriella klein |
200 | yes | 597 | 3 |
| https://gabriella-klein.com/projects/4682342 collage - gabriella klein |
200 | yes | 314 | 3 |
| https://gabriella-klein.com/projects/7265982 BIG DREAMER 2019 - gabriella klein |
200 | yes | 61 | 3 |
| https://gabriella-klein.com/projects/7163808 I Am a Rock, Maya Gallery, 2018 - gabriella klein |
200 | yes | 106 | 3 |
| https://gabriella-klein.com/projects/7238987 Facebook AIR 2020 - gabriella klein |
200 | yes | 39 | 3 |
| https://gabriella-klein.com/projects/5970026 Massachusetts 2016 - gabriella klein |
200 | yes | 98 | 3 |
| https://gabriella-klein.com/projects/7175052 Beit Tami mural 2019 - gabriella klein |
200 | yes | 51 | 3 |
| https://gabriella-klein.com/projects/6775183 Hockney Effect 2018 - gabriella klein |
200 | yes | 58 | 3 |
| https://gabriella-klein.com/projects/7190114 One Day You Won't Be Here, Beita Gallery, 2019 - gabriella klein |
200 | yes | 79 | 3 |
| https://gabriella-klein.com/projects/2473267 paintings 2000-2007 - gabriella klein |
200 | yes | 133 | 2 |
| https://gabriella-klein.com/projects/7111717 NEWS - gabriella klein |
200 | yes | 251 | 2 |
| https://gabriella-klein.com/contact | 200 | no | 0 | 33 |
Audit your own site — free
157 checks, internal PageRank, render-diff. No signup, results in ~30s.