Hi everyone,
I’m experiencing a strange issue with my Next.js application deployed on Vercel.
Environment
- Framework: Next.js (App Router)
- Hosting: Vercel
- Devices tested: Multiple iPhones
- Browsers tested:
Chrome (loads almost instantly)
Safari (very slow initial load)
The issue
When opening my website on an iPhone using Safari, the initial page load is extremely slow. The browser stays on a blank screen for several seconds before the page starts loading.
However, opening the exact same URL on Chrome on the same iPhone loads almost instantly.
This happens consistently across multiple iPhones, so it doesn’t appear to be device-specific.
Once the first page finally loads, navigating around the site feels normal. The problem is only with the initial request in Safari.
What I’ve checked
- The project is deployed on Vercel.
- Performance is excellent on Chrome and other browsers.
- There are no obvious JavaScript errors.
- The issue is reproducible only in Safari.
Questions
- Has anyone experienced this before?
- Could this be related to Safari’s networking stack, HTTP/3, TLS, DNS, or the Vercel Edge Network?
- Are there any Vercel configurations that could cause this behavior?
- What is the best way to determine whether the delay is happening during DNS lookup, TLS handshake, TTFB, or client-side execution?
I’d appreciate any suggestions or debugging tips.
Thanks!