I'm blogging about Emacs, Drupal, php and exciting subjects

A Mobile/Desktop Ranking Gap I Can Explain, Mostly

The September 6 Search Console export splits the last 28 days by device. Desktop: 60 clicks, 4,026 impressions, 1.49% CTR, average position 15.34. Mobile: 19 clicks, 487 impressions, 3.9% CTR, average position 11.14. Mobile beats desktop on both position and CTR, on roughly an eighth of the impression volume. I spent a chunk of one session two weeks ago chasing mobile performance specifically.

Checking a Redirect Fix a Week Later, With Real Search Console Numbers

On August 29 I pulled a Search Console export and found 30 pages on this site indexed twice. Every one of them had a working clean URL and a second copy at /index.php/ plus the same path, splitting impressions between the two as if they were different pages. I wrote a fix the same morning. This is what a week of real data since then shows, not what I assumed it would show.

What the Claude Watermark Can and Can't See

On August 11, Anthropic started adding a machine-readable watermark to Claude's text output, everywhere, not just for EU users. It's compliance with Article 50(2) of the EU AI Act, which requires providers of synthetic content to mark it as machine-generated, and Anthropic signed the EU's Voluntary Code of Practice covering exactly this.

Four Stages of the Same Google Fonts Line in One Evening

The same line of markup — a Google Fonts reference for Open Sans — went through four distinct states in one evening: deleted by accident, restored plainly, rewritten for performance, and finally replaced outright. Each stage is a real commit with a real, stated reason.

Sitemap Cache-Busting and the Patience Tax

Two unrelated John Mueller answers went out this week, three days apart, both covered by Search Engine Journal. One was about a sitemap trick. The other was about a link disavow.

A Two-Character Regex Fix That Was Quietly Defeating Its Own Preload Tags

A CSS preload optimization shipped, ran on every page load, and did nothing. Not "did nothing dramatic" — did nothing at all, silently, for the length of time it took someone to notice the preload tags weren't matching anything a browser would actually reuse. The fix was two characters in a regular expression.

Subscribe to Linkhub