Shopify Oxygen Latency Benchmarks (2025)
Shopify’s Oxygen hosting brings Hydrogen storefronts to the edge — but performance isn’t uniform across all use cases. Merchants and developers need to understand latency benchmarks (p95, p99), cold starts vs warm starts, and how Oxygen compares with other edge hosts like Vercel or Netlify.
Here’s what 2025 data shows about Oxygen performance in production.
Understanding Oxygen’s Performance Model
- Global Edge Network
- Shopify deploys Hydrogen apps across Points of Presence (PoPs) worldwide.
- Requests are routed to the nearest PoP for low latency.
- Cold vs Warm Starts
- Cold start: When a function runs on a PoP for the first time, latency spikes (200–400ms added).
- Warm start: After caching, latencies drop significantly.
- p95 / p99 Latency
- p95: latency that 95% of requests are faster than.
- p99: the “tail latency” that catches edge cases (often from cold starts or heavy requests).
Benchmark Data (2025)
- Static Pages (Hydrated by Shopify CDN)
- p95: ~40–70ms globally.
- p99: ~120ms.
- Dynamic SSR Pages (Hydrogen on Oxygen)
- Warm start p95: ~120–200ms.
- Cold start p95: ~250–400ms.
- p99: Can spike above 500ms on heavy subrequests.
- Comparisons
- Vercel Edge: Similar warm start times, slightly lower cold starts (~150–250ms).
- Netlify Edge: More variable tail latency (~200–600ms).
- Oxygen: Tuned for Shopify APIs → more consistent for commerce workloads.
What Impacts Latency Most
- Subrequests
- Each Shopify API call consumes budget + adds latency.
- Over 50 subrequests can blow out p99 times.
- Bundle Size
- Oversized JS bundles = slower hydration.
- Oxygen enforces bundle limits for this reason.
- Geography
- PoP coverage is good, but edge cases in underserved regions (Africa, rural APAC) may see higher latency.
- Cold Starts
- Can’t eliminate, but can be minimized by optimizing routes + caching.
Best Practices to Optimize Oxygen Performance
- Cache Aggressively: Use Cache-Control headers to keep hot paths warm.
- Reduce Subrequests: Consolidate GraphQL calls; use Shopify’s Subrequest Profiler to diagnose.
- Preload Critical Routes: Keep top pages hot by hitting them regularly.
- Monitor Tail Latency: Don’t just track averages — p95 and p99 tell the real story.
- CI/CD Guardrails: Enforce bundle size + request budgets in pipelines.
When Oxygen is Enough (vs Alternatives)
- Stay on Oxygen: If you’re Shopify-first and need tight integration with Storefront, Cart, and Functions APIs.
- Consider Alternatives: If you require extreme global latency consistency (e.g., sub-100ms worldwide) or multi-framework deployments.
Future Outlook
- Shopify is investing in cold start reduction and broader PoP coverage.
- Expect more native observability tools for latency tracking and error debugging.
- Long-term, Oxygen may rival Vercel not just in Shopify specialization but in raw performance parity.
Conclusion
Oxygen isn’t perfect, but it’s optimized for commerce workloads in ways generic edge hosts aren’t. For Shopify developers, the key isn’t just looking at averages — it’s understanding p95/p99 latencies, subrequest budgets, and cold start trade-offs.
In 2025, Oxygen is ready for enterprise scale — provided teams design with benchmarks in mind.