WriteMySEO / Blog
The WriteMySEO blog

SEO data and SEO technology, one post a day.

How search data is actually produced, where it misleads, and what the technology underneath — crawlers, renderers, structured data, retrieval systems — is really doing. Written the way we write for clients: specific, sourced, and free of guarantees nobody can make.

Published daily · RSS feed · 75 posts so far

Every post

Newest first. One post every day on search data and the technology behind it.

Sep 15, 2026

How Passage and Chunk Retrieval Break Up Your Pages

Search and AI systems increasingly score fragments of a page, not the whole page. Here's how that splitting works and how to write sections that survive it.

passage rankingembeddingsAI searchcontent structure
Sep 14, 2026

Why Google Ignores Your rel=canonical and Picks Another URL

How Google clusters duplicate URLs and selects a representative, which signals outweigh your rel=canonical, and how to diagnose overrides with the URL Inspection API.

canonicalizationindexingURL Inspection APISearch Console
Sep 13, 2026

What lastmod Actually Does in an XML Sitemap

Google uses sitemap lastmod only when it is verifiably accurate. Here is how build pipelines destroy that accuracy and how to generate dates worth trusting.

sitemapscrawlingindexingSearch Console
Sep 12, 2026

Measuring Time-to-Index With the URL Inspection API

How to measure your site's real indexing latency instead of quoting vendor averages — the API fields that matter, polling design, and how to tell discovery from selection delays.

Search Consoleindexingcrawlingmeasurement
Sep 11, 2026

Why Your Rank Tracker and Search Console Disagree

Search Console's average position and your rank tracker are produced by different mechanisms. Here's how each number is built, where it misleads, and which to trust for what.

Search Consolerank trackingmeasurement
Sep 10, 2026

How ETags and Last-Modified Change What Googlebot Crawls

Googlebot sends conditional requests. Most sites answer them with a full 200. Here's how validators work, where they break, and how to measure your 304 rate from logs.

crawlinghttp cachinglog analysisgooglebot
Sep 9, 2026

Why hreflang Clusters Break and How to Verify Them

hreflang is a graph, not a tag. Learn how Google builds language clusters, the four failure modes that silently drop them, and how to validate the graph yourself.

hreflanginternational seocanonicalizationcrawling
Sep 8, 2026

Separating Real Googlebot From Fakes in Your Logs

User-agent strings are trivially spoofed. Here's how forward-confirmed reverse DNS and published IP range files let you verify which crawlers actually hit your server.

log filescrawlinggooglebotbot verification
Sep 7, 2026

Faceted Navigation Creates More URLs Than You Think

Filter combinations multiply exponentially. How to count your real crawl space, choose which facets deserve indexing, and pick the right control for each URL pattern.

crawlingfaceted navigationrobots.txtcanonicalization
Sep 6, 2026

Where Keyword Volume Numbers Come From, and Why They're Wrong

Search volume is a modeled, rounded, and aggregated estimate from an ads forecasting tool. Here's how it's produced, where it breaks, and how to use it anyway.

keyword researchsearch volumeKeyword Plannermeasurement
Sep 5, 2026

How to Split Test SEO Changes Without Fooling Yourself

Before-and-after comparisons can't separate your change from seasonality, core updates, and index churn. Here's how URL-level SEO split tests actually work.

experimentationSearch Consolemeasurementanalytics
Sep 4, 2026

How Google's Robots.txt Parser Resolves Conflicting Rules

Rule order doesn't decide what Googlebot crawls — path length does. How group selection, longest-match precedence, wildcards, and error handling actually work.

robots.txtcrawlingtechnical seo
Sep 3, 2026

Modeling Internal PageRank From Your Own Crawl

Click depth is a weak proxy for internal link value. Here's how to build a link graph from a crawl, run PageRank on it, and read the output without fooling yourself.

internal linkingpagerankcrawlinglink graph
Sep 2, 2026

Why Search Console Query Totals Never Add Up

The sum of query rows in Search Console is smaller than the reported total, page rows can be larger, and average position cannot be averaged. Here's the mechanism.

Search Consolemeasurementdata quality
Sep 1, 2026

Modeling Your Site as One Schema.org Graph With @id

How to use @id references to link Organization, WebSite, WebPage, and Article nodes into a coherent graph — plus where Google follows references and where it won't.

structured dataschema.orgjson-ld
Aug 31, 2026

Tracking Whether You Appear in AI Overviews

Search Console won't break out AI Overview impressions. Here's what is actually measurable, why scraped AIO data is noisy, and a manual check protocol you can repeat.

AI searchAI OverviewsSearch Consolemeasurement
Aug 30, 2026

Measuring Brand Search Lift From Content You Can't Attribute

How to use branded query volume in Search Console as a downstream measure of content that never converts directly — plus the anonymization traps, confounders, and power limits.

search consolebranded searchmeasurementattribution
Aug 29, 2026

noindex and robots.txt Do Opposite Things

robots.txt controls crawling; noindex controls indexing. Applying both cancels the noindex. Here's the mechanism, the failure mode, and a decision table.

robots.txtindexingcrawlingtechnical seo
Aug 28, 2026

What Belongs in a Content Brief, and What Doesn't

How to turn SERP evidence into a brief a writer can execute: the questions to answer, the entities to name, the format to match, and why word count is an output.

content strategyserp analysisentitiesbriefs
Aug 27, 2026

When Server Response Time Limits Your Crawl Rate

How to read the correlation between response time and Googlebot request volume in your server logs to tell whether your crawl rate is capacity-limited or demand-limited.

crawlinglog analysissite speedcrawl budget
Aug 26, 2026

Review Markup After the Self-Serving Review Change

Which review markup still earns stars in Google, why local business and Organization testimonials do not, and how to structure review content that actually qualifies.

structured datarich resultsreviewsschema.org
Aug 25, 2026

Google Discover Has No Query, So It Ranks Differently

Discover matches content to user interests instead of queries. What that changes about topic choice, image specs, titles, and how you read the Discover report.

discoverimagesSearch Consolepersonalization
Aug 24, 2026

URL Structure Decisions That Actually Matter

Subdomain vs subdirectory, folder depth, and keywords in URLs — what Google has documented, what's inference, and which URL decisions actually change outcomes.

url structurecrawlingindexingsite architecture
Aug 23, 2026

Programmatic SEO and the Thin Content Line

The mechanical difference between a useful programmatic page set and a doorway page set, and the tests that tell you which one you are building.

programmatic SEOdoorway pagescontent quality
Aug 22, 2026

Making the Business Case for Site Performance Work

The ranking effect and the conversion effect of speed work need separate estimates. How to build a number that survives a CFO's questions.

performanceCore Web Vitalsmeasurement
Aug 21, 2026

Publishing Seasonal Content Early Enough to Rank

How to read multi-year Search Console data to find when seasonal demand actually starts, and how much lead time indexing and ranking require.

Search Consoleseasonalityindexing
Aug 20, 2026

Author Signals That Still Work and the Ones Google Retired

The rise and retirement of rel=author, what Google actually shut down in 2014, and which author-level signals still plausibly carry weight today.

authorshipentitiesE-E-A-T
Aug 19, 2026

The SEO Audit a React or Next.js Site Actually Needs

Framework sites fail in framework-specific ways. A checklist for the four failure zones: routing, head management, status codes, and hydration.

JavaScript SEONext.jsReacttechnical audit
Aug 18, 2026

Clustering Keywords by SERP Overlap, Not Semantics

Semantic similarity tells you two keywords mean similar things. SERP overlap tells you whether Google ranks one page for both. Only one decides page count.

keyword clusteringSERP analysiscontent planning
Aug 17, 2026

Catching Structured Data Regressions Before They Deploy

Schema markup breaks silently when templates change. How to validate JSON-LD in CI, what the testing APIs actually offer, and where automated checks stop.

structured dataCIJSON-LDtesting
Aug 16, 2026

Reading SERP Volatility Trackers Without Overreacting

What volatility indices like Semrush Sensor and MozCast actually measure, how the scores are built, and why daily movement is the baseline, not the alarm.

SERP volatilityrank trackingalgorithm updates
Aug 15, 2026

When Deleting Content Actually Improves Performance

The evidence for content pruning is weaker than the case studies suggest. How to identify genuine candidates and why redirect-or-delete is the wrong framing.

content pruningcontent auditsindexing
Aug 14, 2026

Shipping SEO Fixes at the CDN Edge When the CMS Cannot

Edge workers can implement redirects, headers, hreflang, and meta changes without touching the CMS. What that deployment path buys you and what it costs.

CDNedge computingredirects
Aug 13, 2026

Infinite Scroll That Search Engines Can Actually Crawl

Scroll-triggered loading is invisible to crawlers. The paginated-URL fallback pattern, done with the History API, keeps the experience and the crawl.

crawlingJavaScriptpagination
Aug 12, 2026

Why Every Backlink Tool Gives You a Different Number

Independent crawlers, different index sizes, and different link definitions mean no two backlink tools agree. How to compare them without fooling yourself.

backlinkslink datacrawling
Aug 11, 2026

Classifying Search Intent From the SERP, Not the Keyword

Keyword-pattern rules misclassify intent at scale. The SERP Google actually serves is the ground truth — here is how to read it programmatically.

search intentSERP featureskeyword research
Aug 10, 2026

The Image SEO Work That Matters After Alt Text

Alt text is the start, not the job. Format choice, responsive sizing, correct lazy loading, filenames, and image sitemaps carry most of the weight.

imagespage speedlazy loadingsitemaps
Aug 9, 2026

Monitoring Real-User Performance With the CrUX API

PageSpeed checks are snapshots. The CrUX API gives you daily field data for your URLs and competitors — here is how to turn it into a trend line.

CrUXCore Web Vitalsfield dataAPIs
Aug 8, 2026

E-E-A-T: What You Can Measure and What You Cannot

Most E-E-A-T advice treats a rater instruction manual as a ranking checklist. Here is what actually maps to implementable signals, and what does not.

E-E-A-Tquality ratersranking signals
Aug 7, 2026

There Is No Duplicate Content Penalty, and What Happens Instead

Duplicated content gets filtered and consolidated, not punished. Where the myth came from, and where duplication actually costs you.

duplicate contentcanonicalizationindexing
Aug 6, 2026

Status Codes Search Engines Treat Differently Than You Expect

301 vs 302 vs 308, 404 vs 410, 503 as a deliberate tool, and the soft 404 trap — what crawlers actually do with each response.

HTTP status codescrawlingredirects
Aug 5, 2026

The Local Pack Runs on Different Signals

Local results rank on relevance, distance, and prominence — which makes rank a function of the searcher's location and breaks ordinary rank tracking.

local SEOrank trackingGoogle Business Profile
Aug 4, 2026

What Actually Wins a Featured Snippet, and Why

Featured snippets are extractions, not awards. The format constraints for paragraph, list, and table snippets — and how to structure pages to be liftable.

featured snippetsSERP featurescontent structure
Aug 3, 2026

Diagnosing a Core Update Hit Without Guessing

Traffic dropped and an update was rolling out. Here is how to separate an algorithmic hit from seasonality, a technical break, or a SERP change.

core updatesSearch Consolediagnostics
Aug 2, 2026

What XML Sitemaps Actually Do

A sitemap is a discovery aid, not an indexing request. Knowing the difference explains why submitting one rarely fixes the problem people submit it for.

sitemapsindexingcrawling
Aug 1, 2026

Site Migrations: The Redirect Map Is the Whole Job

Most traffic lost in a migration is lost in the URL mapping, not the redesign. The mapping is tedious, unglamorous, and the only part that reliably determines the outcome.

migrationsredirectstechnical SEO
Jul 31, 2026

Building an SEO Data Stack That Outlives the UI

Search Console keeps 16 months and caps exports at 1,000 rows. A warehouse removes both limits and makes the analyses that matter possible for the first time.

BigQueryGSC APIdata stack
Jul 30, 2026

hreflang at Scale, and Why It Breaks

hreflang is the most error-prone tag in technical SEO because it requires bidirectional agreement across every URL in the set. Here is the failure taxonomy.

hreflanginternational SEOtechnical SEO
Jul 29, 2026

Measuring AI Referral Traffic in GA4

Traffic from ChatGPT, Perplexity, and Gemini arrives as ordinary referrals and lands in the wrong buckets by default. Here is how to isolate it and what the number does not tell you.

GA4AI searchanalytics
Jul 28, 2026

Writing for Chunk Retrieval

Retrieval systems split your page into passages before they ever evaluate it. Structuring content around that boundary is the highest-leverage change available for AI visibility.

RAGchunkingAI search
Jul 27, 2026

The Canonical Tag Is a Hint, Not an Instruction

Google treats rel=canonical as one signal among several when picking which URL to index. Understanding what overrides it explains most canonical problems.

canonicalduplicate contentindexing
Jul 26, 2026

How to Read a Ranking Correlation Study

Annual "ranking factor" studies correlate site attributes with positions. The correlations are real. Almost every causal conclusion drawn from them is not.

correlationresearch methodsranking factors
Jul 25, 2026

Faceted Navigation Without the URL Explosion

Filters multiply URLs combinatorially. The fix is deciding which combinations deserve to be pages, then making the rest structurally invisible to crawlers.

faceted navigationcrawl budgete-commerce SEO
Jul 24, 2026

Statistical Significance in SEO, Without the Theater

SEO data violates most assumptions behind standard significance tests. Here is what still works, what does not, and how to talk about uncertainty honestly.

statisticstestingmeasurement
Jul 23, 2026

The AI Crawlers in Your robots.txt, and What Blocking Each One Costs

GPTBot, ClaudeBot, PerplexityBot, Google-Extended and the rest do different jobs. Blocking them is a business decision with asymmetric consequences.

robots.txtAI crawlerscrawling
Jul 22, 2026

How to Actually Split-Test a Title Tag

You cannot A/B test SEO the way you test a landing page. The workable method is a time-based test across matched page groups, and it demands more discipline than most teams apply.

testingexperimentationtitle tags
Jul 21, 2026

Finding Content Decay Before It Costs You

Most content peaks and declines on a predictable curve. Detecting the decline early turns a rewrite into a refresh, which is an order of magnitude cheaper.

content decayrefreshanalytics
Jul 20, 2026

Entity SEO: Being a Thing Search Engines Recognize

Search engines model the world as entities and relationships, not just documents and keywords. Becoming a recognized entity is a specific, achievable technical exercise.

entitiesKnowledge Graphstructured data
Jul 19, 2026

IndexNow: Who Uses It and What It Changes

A push protocol for telling search engines a URL changed. Supported by Bing, Yandex, Naver, and Seznam — and notably not by Google in the way most people assume.

IndexNowindexingBing
Jul 18, 2026

Choosing a Rendering Strategy, Honestly

SSR, SSG, ISR, and CSR are not ranked best to worst. They trade against each other, and the right choice depends on how your content changes.

renderingSSRsite architecture
Jul 17, 2026

Internal Linking Is a Graph Problem

Your site is a directed graph and link equity flows through it. Treating internal links as a navigation concern rather than a distribution problem leaves most of the value on the table.

internal linkingsite architecturePageRank
Jul 16, 2026

What "Semantic Relevance" Actually Means Now

Search moved from matching strings to matching meaning via vector embeddings. Understanding the mechanism explains why keyword density stopped working and what replaced it.

embeddingssemantic searchretrieval
Jul 15, 2026

Index Bloat and the Ratio Worth Watching

The gap between pages you publish, pages Google crawls, and pages Google indexes is the most diagnostic number in technical SEO. Here is how to read it.

indexingcrawl budgettechnical SEO
Jul 14, 2026

The Data Search Console Does Not Show You

Anonymized query filtering, row limits, and property-level scoping mean the Performance report is a filtered view. Knowing what is missing changes how you use it.

Search Consoledata qualityGSC API
Jul 13, 2026

How AI Search Systems Choose Which Sources to Cite

Retrieval-augmented answers involve a retrieval step, a ranking step, and a generation step. Each one filters your content differently, and only the first resembles classic SEO.

AI searchRAGcitations
Jul 12, 2026

llms.txt: What It Proposes and What It Currently Does

A proposed standard for giving language models a clean map of your site. Worth understanding, worth a small implementation, not worth overstating.

llms.txtAI searchstandards
Jul 11, 2026

Which Schema Types Still Earn Rich Results

Structured data does not improve rankings directly. It qualifies pages for specific SERP treatments — and the list of treatments that still exist has shrunk.

structured dataschema.orgrich results
Jul 10, 2026

Core Web Vitals: Why Your Lab Score and Your Field Data Disagree

Lighthouse measures a simulated load on one machine. CrUX measures real users over 28 days. When they conflict, only one of them is what Google uses.

Core Web VitalsperformanceCrUX
Jul 9, 2026

Log File Analysis Without the Enterprise Toolchain

Server logs are the only record of what search engines actually did on your site. A few command-line passes answer questions no third-party crawler can.

log filescrawl budgettechnical SEO
Jul 8, 2026

How Googlebot Actually Renders JavaScript

Crawling and rendering are separate, queued stages. Understanding where the queue sits explains most JavaScript SEO problems and points at the fix.

JavaScript SEOrenderingcrawling
Jul 7, 2026

The Zero-Click Debate, Read Carefully

Studies putting zero-click searches above half of all queries are measuring something more specific than the headline suggests. What the denominator includes changes the strategic conclusion entirely.

zero-clickSERP featuresmeasurement
Jul 6, 2026

Where Keyword Volume Numbers Come From, and How Wrong They Are

Search volume is a modeled, bucketed, annualized estimate — not a count. Understanding how the number is produced tells you exactly when to trust it and when it will burn you.

keyword researchdata qualityKeyword Planner
Jul 5, 2026

Why Search Console's Average Position Misleads You

Average position is a mean of a skewed distribution recorded only when you were shown at all. Here is what it actually measures and how to stop drawing the wrong conclusions from it.

Search Consolemetricsreporting
Jul 4, 2026

What Position One Is Actually Worth Now

Organic CTR curves have flattened as SERPs filled with features. Here is how to read click-through data for your own site instead of borrowing someone else's curve.

CTRSearch ConsoleSERP features