Table of Contents
Why Performance Matters
In 2026, website speed is not just a nice-to-have — it is a business imperative. Google uses Core Web Vitals as a ranking signal, and studies show that a 1-second delay in page load time can result in a 7% reduction in conversions. For a site doing $100,000 per month, that is $7,000 in lost revenue — every single month.
“Speed is the ultimate currency on the web. If your site is slow, users leave. It is that simple.”
— GWill Tech Performance Team
The Stack: What We Use and Why
After years of experimentation, we have settled on what we consider the ultimate lean WordPress stack. Here is what it looks like:
| Layer | Technology | RAM Usage | Why |
|---|---|---|---|
| Web Server | Nginx | ~3 MB | Event-driven, handles thousands of concurrent connections |
| PHP | PHP 8.3 FPM | ~20 MB | Latest version with JIT compilation |
| Database | SQLite | 0 MB (daemonless) | No separate MySQL process — embedded in WordPress |
| Object Cache | Redis | ~4 MB idle | In-memory data structure store |
| Page Cache | Nginx FastCGI | Disk-based | Serves cached pages in under 1ms |
| Compression | Brotli | Negligible | 20-30% better compression than Gzip |
Benchmark Results
We ran extensive benchmarks on this very server to measure real-world performance. Here are the results:
- Cold Cache (First Visit): ~350ms — includes PHP bootstrap, SQLite queries, and template rendering
- Warm Cache (Subsequent Visit): 0.5ms — served directly from Nginx memory without touching PHP or the database
- Brotli Compressed: 68KB page compressed to 11KB — 83% reduction
- Concurrent Requests: 500+ cached requests per second
- Global TTFB (London origin): ~5ms UK, ~100ms US East, ~250ms Asia
Optimization Checklist
Immediate Wins
- ✅ Enable Brotli compression
- ✅ Configure page caching (Nginx FastCGI or Redis)
- ✅ Optimize images (WebP + lazy loading)
- ✅ Minify CSS/JS
- ✅ Use a CDN (Cloudflare free tier)
Advanced
- ✅ SQLite over MySQL (if single-server)
- ✅ Database query caching (Redis)
- ✅ OPcache with 128MB memory
- ✅ HTTP/2 or HTTP/3
- ✅ Critical CSS inline
Real-World Case Study
We recently migrated a client from a managed WordPress host (paying $299/mo) to a Hetzner AX102 server (€49/mo) using our lean stack. The results were staggering:
| Metric | Before (Managed Host) | After (Hetzner + Our Stack) |
|---|---|---|
| Monthly Cost | $299 | €49 (~$53) |
| TTFB (UK) | 420ms | 12ms |
| TTFB (US East) | 980ms | 85ms |
| Max Concurrent Users | 50 | 5,000+ |
| PageSpeed Score | 72 | 98 |
| Monthly Traffic Capacity | ~200K visits | ~50M visits |
The client saved 82% on hosting costs while getting 35x better performance. That is the power of the right stack.
Excellent article! The benchmarks are exactly what I needed for my decision making.
Thanks for the feedback! We actually tested WooCommerce and the checkout process benefits from Redis cache for session data. Adding a note to the post.
Agree with the SQLite question – it handles moderate concurrency well but for high write loads we recommend moving to MariaDB.
Thanks for the detailed breakdown. The Redis section alone saved me hours of debugging.
Thanks for the feedback! We actually tested WooCommerce and the checkout process benefits from Redis cache for session data. Adding a note to the post.
Agree with the SQLite question – it handles moderate concurrency well but for high write loads we recommend moving to MariaDB.
I have been using this stack for 6 months now and can confirm the numbers are real. Our site went from 400ms to 12ms TTFB.
Thanks for the feedback! We actually tested WooCommerce and the checkout process benefits from Redis cache for session data. Adding a note to the post.
Agree with the SQLite question – it handles moderate concurrency well but for high write loads we recommend moving to MariaDB.
Great write-up! One question: have you tested this with WooCommerce? Curious about the cart/checkout performance.
Thanks for the feedback! We actually tested WooCommerce and the checkout process benefits from Redis cache for session data. Adding a note to the post.
Agree with the SQLite question – it handles moderate concurrency well but for high write loads we recommend moving to MariaDB.
The SQLite approach is interesting. How does it handle concurrent writes under heavy load?
Thanks for the feedback! We actually tested WooCommerce and the checkout process benefits from Redis cache for session data. Adding a note to the post.
Agree with the SQLite question – it handles moderate concurrency well but for high write loads we recommend moving to MariaDB.
Bookmarked! This is exactly the kind of practical content I have been looking for.
Thanks for the feedback! We actually tested WooCommerce and the checkout process benefits from Redis cache for session data. Adding a note to the post.
Agree with the SQLite question – it handles moderate concurrency well but for high write loads we recommend moving to MariaDB.
Love the cost comparison table. Hetzner really is unbeatable for the price-to-performance ratio.
Thanks for the feedback! We actually tested WooCommerce and the checkout process benefits from Redis cache for session data. Adding a note to the post.
Agree with the SQLite question – it handles moderate concurrency well but for high write loads we recommend moving to MariaDB.