Writing
Posts on crawling, indexing, internal linking, and measuring search performance, with the methods, the queries and the scripts behind them.
- siteAuthority: What One Line of the Leak Proves, Suggests, and Cannot
The leaked schema has a field called siteAuthority. Here is the whole line, every public quote it supposedly contradicts, and each claim built on it graded by what the text actually supports.
- Going Public: Six Months of Private Notes, All at Once
Eleven posts went up in one afternoon, each keeping the date it was written on. Why the notes stayed private, why they are not staying private, and what comes next.
- Teardown Without Access: What External Data Can and Cannot Prove
No Search Console, no logs, no analytics. Here is the full external teardown protocol, with every finding labelled by what it proves, suggests, or cannot.
- Do AI Answers Cite You? The Measurement Protocol, Pre-Registered
The same prompt returns a different citation set every run. Here is the harness, the sampling design and the log queries, published before the results rather than after.
- Reading Googlebot in Your Access Logs: Demand, Capacity, Waste
Googlebot in your logs is a dozen different clients. Verify them properly, model crawl budget as demand times capacity, and price every wasted fetch in server time.
- Content Decay Triage: Decompose the Drop Before You Rewrite
Clicks are impressions times CTR. Decompose a traffic drop into both factors per query cohort and the fix picks itself, or tells you not to rewrite.
- Cannibalization: A Query–URL Matrix and a Decision Rule
Two URLs on one query is a measurement, not a vibe. A detector built on the Search Console bulk export, thresholds you can tune, and the merges that lose traffic.
- Intent Matching You Can Measure: Fingerprint the SERP First
Record eleven fields for each ranking URL, sample the set for 14 to 30 days, then score your draft's distance from whatever held still. Intent as a number.
- Rendering-Stage Failures: Soft 404s and Canonical Conflicts
Response HTML and rendered DOM diverge silently. Here is a headless Chrome harness that diffs them and a CI job that fails the build when the canonical drifts.
- Internal PageRank on Your Own Crawl Graph: Finding Underpowered Pages
Internal links are a ranking lever and a crawl-demand lever at once. Build the edge list, compute PageRank against a baseline, then prove the change with a holdout.
- Reading a Google Patent Without Fooling Yourself: Claims First
Most SEO patent commentary quotes the description, the part no examiner ever tested. Here is the grading procedure, and how to turn a claim into a test.
- Discovered – Currently Not Indexed: Scheduling or Selection
The label is emitted by two systems: a scheduler that never fetched the URL and a selector that fetched it and declined. One API field tells them apart.
- The Cheapest Crawl Audit: Join Your Sitemap Against Your Logs
Two lists you already have, one join, three answers: which submitted URLs Googlebot never fetched, and which URLs it fetches that you never submitted.