3.8 KiB
3.8 KiB
SEO Remaining Tasks
This document contains a list of all SEO issues identified in the Ahrefs and Seobility reports that still need to be addressed in the codebase.
1. Content & Metadata Issues
-
Fix Missing H1 Tags on Core Pages
- Affected Pages:
/,/pricing,/login,/signup,/faq,/privacy,/newsletter,/create. - Issue: These pages are Client Side Rendered (CSR) or lack a server-side
<h1>tag in the initial HTML payload. - Action: Add an
<h1>(visible orsr-only) to the Server Component or ensure the Client Component renders it immediately.
- Affected Pages:
-
Fix Low Word Count / Thin Content
- Affected Pages:
/,/pricing,/login,/signup,/faq,/privacy. - Issue: Crawlers see 0 words on these pages because the content is rendered via JavaScript (
use client). - Action: Implement Server Side Rendering (SSR) for the main content or add
sr-onlysemantic fallbacks for crawlers.
- Affected Pages:
-
Expand Meta Descriptions
- Affected Pages:
/,/pricing,/login,/signup,/newsletter,/privacy,/faq,/qr-code-erstellen, Blog entries. - Issue: Meta descriptions are too short (< 80 characters) or duplicates.
- Action: Update
generateMetadatainpage.tsxfiles to have descriptions between 110-160 characters.
- Affected Pages:
-
Fix Page Titles
- Affected Pages:
/qr-code-erstellen, Blog posts. - Issue: Titles are too long (> 60-70 characters) or have keyword stuffing/repetition.
- Action: Shorten titles to be concise and click-worthy, avoiding simple concatenation of keywords.
- Affected Pages:
-
Fix Duplicate Content & Titles
- Affected Pages:
/pricing,/newsletter,/login,/signup. - Issue: These pages likely share the same metadata or layout without unique content in the crawler's eyes.
- Action: Ensure each page has unique
titleanddescriptioningenerateMetadata.
- Affected Pages:
2. Technical SEO
-
Fix 307 Redirects to 301
- Issue: Blog posts and legacy URLs are redirecting with status
307(Temporary) instead of301(Permanent). - Affected Paths:
/blog/vcard-qr-code-generator->/create/blog/qr-code-restaurant-menu->/dynamic-qr-code-generator/blog/bulk-qr-code-generator->/bulk-qr-code-generator
- Action: Locate these redirects (likely in
next.config.jsormiddleware.tsor component logic) and change status to 301.
- Issue: Blog posts and legacy URLs are redirecting with status
-
Fix Indexing of Protected/Private Pages
- Issue: Ahrefs is flagging
/pricingas "Indexable" but likely encountering issues. Verify if/pricingshould be indexed. - Action: Ensure public pages like Pricing are NOT in
(app)group which hasnoindexin layout, or override therobotsmeta inpricing/page.tsx.
- Issue: Ahrefs is flagging
-
Fix "No Outgoing Links"
- Issue: Crawlers see pages as dead ends because links are injected via JS.
- Action: Ensure standard
<a>orLinktags are present in the initial HTML.
3. Link Profile
-
Improve Internal Link Texts
- Issue: "Click here" or full URL used as anchor text.
- Action: Use descriptive keywords for links (e.g., "See our pricing" instead of "Click here").
-
Fix Alternate Links (hreflang)
- Issue: Mismatch in
hreflangor missing self-referencing canonicals. - Action: Verify
alternatesconfiguration inlayout.tsxorpage.tsxmatches the actual URL structure.
- Issue: Mismatch in
4. Performance & Images
-
Optimize Large Images
- Files:
/blog/1-boy.png,/blog/2-body.png(~4MB each). - Action: Convert to WebP/AVIF and resize to < 500KB.
- Files:
-
Improve Page Speed
- Issue: Response time for
/qr-code-erstellenis slow. - Action: Check for expensive server-side operations or optimize database queries.
- Issue: Response time for