"Fast" means different things in different contexts. A dashboard used once a day has different needs than an e-commerce checkout. This lesson helps you know when to invest in performance, and when "good enough" is good enough.
E-commerce: speed = revenue
- Akamai: 100ms delay = 7% conversion rate drop
- Amazon: 100ms latencyWhat is latency?The time delay between sending a request and receiving the first byte of the response, usually measured in milliseconds. cost = 1% of sales (billions of dollars)
- Walmart: Every 1-second improvement = 2% conversion increase
- Shopify: Fast stores have 50% higher conversion rates
Speed matters because: slow sites feel untrustworthy (you have 50ms to make a visual impression), 18% of users abandon carts due to slow checkout, 70% of e-commerce traffic is mobile (less patient users), and Google ranks fast sites higher.
ROI example: A site making $1M/year loads in 5 seconds. Optimize to 3 seconds = ~14% conversion increase = $140,000 additional revenue. If optimization costs $20,000, ROI is 7x.
User experience thresholds
| Time | User perception | What happens |
|---|---|---|
| 0-100ms | Instant | User feels direct manipulation |
| 100-300ms | Slight delay | Noticeable but acceptable |
| 300ms-1s | Delayed | Mental context switch begins |
| 1-3 seconds | Slow | User starts losing attention |
| 3-10 seconds | Too slow | User feels system is struggling |
| 10+ seconds | Unusable | User abandons |
Perceived vs actual performance
You can make users feel things are fast even when they're not:
- Progressive loading: Show content as it arrives rather than waiting for everything
- Skeleton screens: Gray placeholder boxes where content will appear
- Optimistic UI: Show the result immediately (e.g., "like" button changes color) while the server processes in the background
- Preloading: Load the next page while the user reads the current one
Mobile vs desktop
Mobile users are 3x more likely to abandon slow sites. They face weaker processors, less RAM, variable cellular connections, and shorter patience. Google's mobile-first indexing means your mobile site speed affects SEO rankings even for desktop searches.
Key strategies: Serve responsive images (don't send 2000px images to phones), ensure touch targets are 48px+ for fingers, reduce JavaScript (mobile browsers struggle with heavy JS), and consider PWAs for offline-capable, fast-loading experiences.
Cost-performance tradeoffs
Speed costs money (better servers, CDNs, optimization work, monitoring tools). But slowness costs more: lost conversions, wasted ad spend on bouncing users, support tickets, brand damage, and SEO penalties.
Not every page needs to be lightning fast. Prioritize critical paths:
- Optimize heavily: Homepage, product pages, checkout, login/signup
- Acceptable to be slower: Admin dashboards, reports, settings, help docs
The Pareto principle: 80% of traffic hits 20% of pages. Optimize those first.
Performance budgets
A performance budget is a limit treated like a feature requirement: "Our homepage must load in under 2 seconds on 4G."
- Set the budget (e.g., "JavaScript bundleWhat is bundle?A single JavaScript file (or set of files) that a build tool creates by combining all your source code and its imports together. under 200KB")
- Measure continuously on every code change
- Block violations: don't merge code that exceeds the budget
- Review regularly as expectations evolve
| Budget type | Example | Why it matters |
|---|---|---|
| Time-based | "Load in < 3 seconds" | Direct user experience |
| Quantity-based | "JavaScript < 200KB" | Predictable performance |
| Rule-based | "No render-blocking resources" | Best practices |
| Metric-based | "LCP < 2.5s, CLS < 0.1" | Core Web Vitals compliance |
Real-world performance stories
Pinterest: Reduced JavaScript bundleWhat is bundle?A single JavaScript file (or set of files) that a build tool creates by combining all your source code and its imports together., added lazy loadingWhat is lazy loading?Deferring the loading of a resource like an image or component until the moment it's actually needed, speeding up the initial page load., optimized critical rendering path. Result: 40% faster perceived wait time, 15% more signups, 10% more mobile users staying 5+ minutes.
BBC: For every additional second pages took to load, 10% more users left. Made performance a first-class priority with impact assessment on every feature.
The $300 million button: An e-commerce site removed mandatory account creation from checkout (one less form). Annual revenue increased $300 million. Every step adds friction; streamlined flows convert better.
Quick reference: When to invest in performance
| Scenario | Performance priority | Why |
|---|---|---|
| E-commerce checkout | Critical | Direct revenue impact |
| Landing pages for ads | Critical | You're paying for traffic |
| SaaS onboarding | High | First impression matters |
| Internal tools | Low | Users have no choice |
| Content/news sites | High | Bounce rate critical |
| API endpoints for mobile | Critical | Mobile users are impatient |
| Admin dashboards | Medium | Used frequently, so speed appreciated |
| Help documentation | Low | Users will wait if they need help |