Harry Roberts
banner
csswizardry.com
Harry Roberts
@csswizardry.com
🚀 Independent Web Performance Consultant • Speaker • Google Developer Expert, Web Performance • Accepting new clients • https://harry.is/for-hire
Pinned
🧑‍💻 I wasn’t going to mention this until next week but it’s Friday—treat yourself!

I’ve just launched a members-only subscription: screencasts, Q&A, mentoring, discounts, and more.

👉 csswizardry.gumroad.com/l/subscribe
Subscribe
I’ve been writing or creating content in some form or another since 2009. Some of you have been with me since the very beginning. That over 15 years!The articles and research I publish on csswizardry....
csswizardry.gumroad.com
I’ve been consulting for 12 years and I still get a real rush every time an enquiry comes in. An amazing feeling!
December 8, 2025 at 2:29 PM
Reposted by Harry Roberts
Build for the Web, Build on the Web, Build with the Web

csswizardry.com/2025/01/buil...
Build for the Web, Build on the Web, Build with the Web – CSS Wizardry
What is the real, long-term cost of adopting a JavaScript framework?
csswizardry.com
October 18, 2025 at 5:45 PM
I like the walk! Especially after being sat in lounges and planes. But I did spot the same route.
October 29, 2025 at 12:02 PM
(Anyone traveling Schiphol to Centraal please be advised that Sprinter trains are anything but.)
🇬🇧 ✈️ 🇳🇱
To @perfnow.nl! My favourite week of the year.
October 29, 2025 at 11:42 AM
I hope so!
October 29, 2025 at 11:32 AM
Woohoo!
October 29, 2025 at 11:32 AM
SmartWeb, Bucharest, September 2014!
October 29, 2025 at 9:34 AM
🇬🇧 ✈️ 🇳🇱
To @perfnow.nl! My favourite week of the year.
October 29, 2025 at 9:25 AM
Reposted by Harry Roberts
You know you should be testing your site or app with low and mid-tier mobiles, but what exactly does that *mean* for 2025? What's low-end? What's mid-tier? What are people using right now?
@csswizardry.com gets into which phones would work well, what emulations to use, and why it's important.
Low- and Mid-Tier Mobile for the Real World (2025) – CSS Wizardry
Discover the most representative low- and mid-tier mobile devices for web performance testing in 2025.
csswizardry.com
October 28, 2025 at 10:02 AM
What a beautiful trip to Toronto for @fitc.ca. Thank you so much for having me.
October 24, 2025 at 3:22 AM
Not only is @jpamental.bsky.social a really good friend, he’s an exceptionally good MC. You should hire him for your event.
October 21, 2025 at 9:19 PM
Huge news. Congratulations, dude!
October 16, 2025 at 9:54 AM
Me too!
September 28, 2025 at 12:45 PM
Mailchimp. Expensive but also very mature feature set.
September 28, 2025 at 12:45 PM
Moi? 😇
September 27, 2025 at 12:30 PM
If your company has just laid you off, sneak `v` and `version` into the allowlist before you leave 👀
Allowlisted params (e.g. ?utm_source) can be reused in HTTP cache!
Blink: Intent to Ship: No-Vary-Search support for the HTTP disk cache
September 26, 2025 at 4:32 PM
I just gave a deep dive with examples (this is perfect for things like Black Friday!) for Subscribers.

👉 csswizardry.gumroad.com/l/subscribe
Subscribe
For over 15 years, I’ve been sharing practical, real-world insights on web performance. Free, open, and available to everyone. Now, I’m inviting you to join a new community of performance enthusiasts ...
csswizardry.gumroad.com
September 26, 2025 at 4:21 PM
Allowlisted params (e.g. ?utm_source) can be reused in HTTP cache!
September 26, 2025 at 11:58 AM
Thanks dude!
September 25, 2025 at 10:18 AM
It’s hard to explain in writing and I can’t really screen-share my logged-in view, but if you have multiple @cloudflare.social accounts and zones, try clicking this link:

dash.cloudflare.com?to=/:account...

Neat!
September 24, 2025 at 12:24 PM
[email protected] showed me this hyper elegant deep-link approach that @cloudflare.social provide: `dash dot cloudflare dot com/?to=/:account/:zone/speed/optimization/protocol`

This lets you select your Cloudflare account and zone before taking you to its correct Protocol dashboard!
September 24, 2025 at 12:24 PM
I recently started instrumenting both @cloudflare.social and browser cache hits/misses and the numbers, while obvious, are compelling. The best request is the one that never happens. Check that 0ms TTFB 😍

@speedcurve.com
September 20, 2025 at 1:07 PM
Reposted by Harry Roberts
Build for the web, Build on the web, Build with the web.

An excellent take from @csswizardry.com on progressive enhancement, SPA frameworks and staying as close to the platform as possible.

csswizardry.com/2025/01/buil...
Build for the Web, Build on the Web, Build with the Web – CSS Wizardry
What is the real, long-term cost of adopting a JavaScript framework?
csswizardry.com
September 19, 2025 at 5:50 AM
👉 I sign a mutual NDA for all Seekers so they’re free to show me all their top secret work projects! Or maybe just the open source things they’re working on. It’s all covered: csswizardry.gumroad.com/l/subscribe
Subscribe
For over 15 years, I’ve been sharing practical, real-world insights on web performance. Free, open, and available to everyone. Now, I’m inviting you to join a new community of performance enthusiasts ...
csswizardry.gumroad.com
September 18, 2025 at 4:10 PM