Internal Link Rot: Articles Point to Renamed or Deleted Slugs
Half your internal links return 404 because you renamed slugs without redirects. Run linkinator or lychee in CI, add a redirects file, fail prebuild on dangling links.
Articles tagged with #Content ops
Half your internal links return 404 because you renamed slugs without redirects. Run linkinator or lychee in CI, add a redirects file, fail prebuild on dangling links.
ZH pages have a canonical link pointing at the EN version — Google deindexes the ZH variant. Per-page canonical from current URL, verify with curl + view-source.
Your article has FAQPage JSON-LD but Google never shows the FAQ rich result. Causes: wrong Question/Answer nesting, page noindex, mismatched heading text. Fix and re-test.
Hreflang URLs don't pair, wrong language codes (zh vs zh-CN), missing x-default. Auto-emit from translationKey, validate with hreflang.org, fix at the source.
Articles use img tags with no alt attribute — bad for accessibility, bad for image search, bad for AdSense quality signals. Audit, backfill, enforce via MDX lint.
publishedAt never moves even when content is rewritten. Add updatedAt, use volatile for fast-moving topics, refresh dates only on substantial edits — not cosmetic ones.
Tag pages exist but have 0 published articles after cleanup. Audit tag usage, require minimum 1 article per tag, auto-deindex or 410 the empty archives.
Solo edits drift EN and ZH apart — sections, code blocks, links diverge. Audit pairs by structure, diff bilingual content, and enforce translate-as-you-edit policy.
Your _redirects file is 3,000 lines. Builds are slower, crawlers chase chains, and nobody knows which rules are still needed. How to audit, collapse, and prune.
Your 'Related articles' module shows three near-identical posts on every page. Readers bounce, internal-link equity dilutes. How to detect, score, and de-duplicate.
How to ship a single article update on an Astro site without rebuilding 3,000 pages: islands, on-demand rendering, content-layer hashing, and a hybrid workflow that scales.
A 4-hour quarterly review template that surfaces traffic drift, topical decay, and rank loss before they compound — with the exact questions, queries, and decision rules to use.
What roles a content site actually needs at each size — solo, 2-person, 3-person, 5-person — and where to add the next hire to unblock growth instead of just adding cost.
Last year's UI in screenshots, instructions don't match what the user sees — trust drops, bounce rate rises. Audit + version-stamp + quarterly refresh.
Articles read fine but rank nowhere, get AdSense rejected for "unoriginal content." "Unique value" is one of six concrete additions — examples, data, contrarian POV, original research.
"We have 800 articles!" — but 60% are bilingual duplicates, drafts, or thin redirects. Count what matters: unique, indexable, substantive URLs.
English got updated 5 times, Chinese once. ZH version has outdated screenshots, broken cross-links, hreflang warnings. Audit drift, decide per pair, automate the sync.
Category page is title + cards. Google sees navigation, not content. Add a 300-word editorial intro + curated "start here" + a take, and the category becomes a hub article.
Build deployed pages still marked `draft: true`. They got indexed with placeholder text. Audit, deindex, then add CI guards so it can't happen again.
Audit flags 80 pages sharing the same `<title>`. Usually template fallback, pagination, or bilingual collision. Make per-page title required and CI-enforced.
200 outbound links on the homepage = 0.5% boost per link. Cut to 30 well-chosen destinations; move long lists to dedicated index pages.
Top 10 pages have 80% of internal links; 200 pages have 0–2. Audit + body-text linking + smart related-articles widget = rebalance one of the highest-leverage SEO actions.
500 articles, top 20 pages get 80% of impressions, the tail gets 0–5/month. Power-law is normal — dead tail is the bug. Validate keywords, fix intent + links.
Pages with zero internal inbound links earn nothing. Not just an indexing debt — a quality signal to Google. Detect + integrate or remove.
"Crawled — not indexed" balloons to thousands of `?sort=`, `?page=`, tag-combo URLs. Triage by source, block via canonical / robots / noindex; reclaim crawl budget.
100 articles in 3 months — same structure, same examples, same conclusion. Templated thinking, not AI per se. Diversify angle + slow down before publishing more.
Half your articles are 3+ years old, referencing tools that changed dramatically. Refresh top-traffic stale articles with real edits (not date-bump tricks).
800 tags, 600 with 1-2 articles each = 600 thin archive pages. Set minimum-article threshold, merge synonyms, noindex the rest.
500+ pages, Google considers most thin. Audit by word count + traffic, then tag each as expand / merge / noindex / 410. Cut the weakest 20-40%.
Pillar + 2 supporting articles isn't a cluster — it's a stub. Real clusters have 6-10+ supporting articles. Brainstorm sub-topics, ship steadily over months, link bidirectionally.
Practical taxonomy + URL design for content sites — section schemas, hub-page templates, and sitemap config that scales from 50 to 1000 articles.
Structure a Markdown / MDX content site to scale from 50 to 1000 articles. Includes Content Collections schema, component map, and link-check script.
Depth-first vs breadth-first for a new content site, with a hub-stage decision rule, content plan template, and Search Console check.
Design a long-tail content site so structure, slugs, and internal links scale from 1 to 500 articles. Includes content sheet template and slug enforcement.
Decide bilingual go/no-go with Search Console signals, hreflang layout template, and a 30-article re-evaluation gate.
A repeatable workflow for using AI to audit and upgrade old articles — what to ask, what to ignore, and how to turn a backlog into a refresh queue.
A practical 2026 guide to writing the App Store listing copy that drives installs — the name, subtitle, keywords, screenshots, and description that actually convert.
Duplication kills indexing once you cross a few hundred articles. Here's the script-driven workflow to catch it before Google does.
The specific signals that make AI-written articles read as low-quality, and the concrete edits that fix them — from a 2026 publisher's perspective.
Volume buys coverage, quality buys rankings. Use this Search Console-driven decision flow and quality-floor checklist to choose the right move.
Google crawled your page and decided not to index it. The reasons are almost always quality, duplication, or authority — not technical. The real fix list.
A 2026 workflow for using AI to spot the articles your site should have but doesn't — using your own sitemap, Search Console data, and a topic pillar map.
A real diagnostic checklist for when you publish content and Google ignores it. The order matters — start at the top.
Sites past 1,000 articles need scripts, not willpower. Use this content-index generator, dupe scanner, and retire-shelf workflow to stay sane.
A realistic 30-day playbook for a brand-new content site: indexing, structure, the first 20 articles, and what to ignore.
Design pillar and cluster pages so Google understands your topical authority. Includes content schema, link-audit script, and pillar page template.
A quarterly content audit with concrete scripts: URL inventory, Search Console join, dead-page flags, dupe scanner, broken-link checker, and decision log.
A practical 2026 framework for using AI to produce dozens of articles per month without triggering helpful-content penalties or losing the voice that makes the site work.
Pick a sustainable publishing cadence with a real 8-week measurement, batch workflow, and backlog-tracker script you can drop into your repo.
Refresh only what's worth refreshing — with the Search Console query that finds position 8-20 articles, a refresh template, and re-indexing flow.