petrichor.page
Petrichor - An offline music player for macOS | Petrichor
0 failed · 3 warnings · 26 passed
Audited Sun, 26 Jul 2026 17:15:09 GMT · https://petrichor.page/
Meta & Head
25/25
Title, description, canonical, social tags — what search engines read first.
Everything we check in this category passed.
Content & Structure
21.1/25
Headings, copy depth, images, structured data, internal linking.
Word counthigh impactlow effort
578 words of visible text
With only a few hundred words, this page gives search engines little to index and often loses to more thorough competitors targeting the same query. Expand it toward 600+ words of genuinely useful material: answer the questions visitors arrive with, and add examples, specifics, an FAQ section, or step-by-step detail. Don't pad with fluff or repeat keywords to hit a number — length should be a byproduct of covering the topic properly, never the goal itself.
Image alt textmedium impactlow effort
13 of 15 images have alt text
Alt text is how search engines understand what an image shows — it feeds image-search rankings and is what screen readers announce to blind visitors. Add a short, specific alt attribute to every meaningful image, describing the content rather than listing keywords: alt="Golden retriever puppy playing in snow" beats alt="dog puppy pet animal". Give purely decorative images an empty alt="" instead of omitting the attribute, so assistive technology knows to skip them rather than reading out the filename.
6 passing checks
- Single H1 heading1 h1 found: "An offline macOS music player"
- Heading hierarchy14 headings in order without skipped levels
- Structured data (JSON-LD)JSON-LD types found: WebSite
- HTML lang attribute<html lang="en">
- JavaScript-dependent contentvisible text ~3586 chars in the initial HTML
- Internal linking12 internal, 14 external links
Technical
24.4/25
HTTPS, redirects, robots, sitemap, speed, crawlability.
Response compression enabledlow impactlow effort
no content-encoding header
This HTML is served uncompressed, so every visitor downloads far more bytes than necessary — text compresses extremely well, and the savings directly speed up first render on slow connections. Enable Brotli or gzip on your server or CDN: in nginx it's "gzip on;" (or the brotli module), in Apache it's mod_deflate via .htaccess, and on most CDNs it's a single toggle. Make sure compression covers all text types (HTML, CSS, JS, JSON, SVG), but skip already-compressed images — recompressing them wastes CPU for no gain.
11 passing checks
- Served over HTTPSfinal URL uses https://
- HTTP redirects to HTTPShttp:// redirects to https://
- No mixed content0 http:// subresource references
- Short redirect chainno redirects; URL resolves directly
- robots.txt present and permissiverobots.txt exists and allows crawling
- XML sitemap availablesitemap.xml exists and is valid XML
- Fast time to first byte113 ms
- Reasonable HTML size21.3 KB
- Missing pages return 404missing paths return HTTP 404/410
- www and non-www resolve consistentlywww and non-www converge on the same host
- HTML5 doctype<!DOCTYPE html> present
Performance
Core Web Vitals scoring via Google PageSpeed is coming soon.
Share your score
Embed this live badge on your site — it updates whenever the audit is re-run.