Vercel site down? How to tell if it's you or Vercel
Your site on Vercel stopped working. A five-minute routine to tell a Vercel outage from a problem in your deploy, domain or code — and how to get back online fast with a rollback.
Your site on Vercel is showing an error, or not loading at all. The first question decides everything you do next: is Vercel having a problem, or is it your project?
If it's Vercel, the right move is usually to wait and tell your users. If it's your project, waiting won't help, and every minute counts. Here's a quick routine to tell the two apart, and what to do in each case.
Step 1: Check Vercel's status (one minute)
Start outside your project:
- Open our live Vercel status page. It shows what Vercel's official status page reports and the result of our own check from outside, refreshed every 5 minutes.
- Or go straight to Vercel's official status page at
vercel-status.com.
Look for an incident affecting what you use: the edge network, builds, functions, a specific region, or the dashboard. Vercel's incidents are often partial — "elevated errors in one region" or "delayed builds" — so read the description, not just the color.
If there's an active incident that matches your symptoms, it's probably Vercel. Skip to "If it's Vercel" below. If everything is green, keep going.
Step 2: Check other projects, and other services
- Do your other Vercel projects work? If several unrelated projects broke at the same time, that points to Vercel or your account. If only one broke, it's almost certainly that project.
- Does the site depend on other services? A site on Vercel can be "down" because its database or API is down. If you use Supabase, Stripe, OpenAI or similar, check their status too. Our Supabase and Stripe pages are the usual suspects.
Step 3: Read the error code
Vercel's error pages show a code. It tells you a lot about where the problem is. Vercel documents all of them on its error codes page; these are the ones you'll meet most:
404: NOT_FOUND or DEPLOYMENT_NOT_FOUND
Vercel's docs say DEPLOYMENT_NOT_FOUND means the request is for a deployment that doesn't exist — usually a wrong deployment URL, or a deployment that was deleted.
Usually you. Check that:
- you're opening the right address (a production domain, not an old preview link);
- the domain is still assigned to this project in Project → Settings → Domains;
- the latest production deployment succeeded and wasn't deleted.
A plain 404: NOT_FOUND on deeper pages of a single-page app (built with Vite, like Lovable or Bolt apps) usually means the host isn't sending every path to index.html. Add a rewrite for that in vercel.json.
500: FUNCTION_INVOCATION_FAILED
Vercel's error list puts this under function errors: your serverless function (an API route or a server-rendered page) threw an error.
Usually you. Open the project in the Vercel dashboard and look at the Logs for the failing request. Typical causes: a missing environment variable, a database that isn't reachable, or a bug in a recent change.
504: FUNCTION_INVOCATION_TIMEOUT
The function ran longer than it's allowed to. Usually you, or a slow service you call. Check whether a database query or an external API became slow. If an external service is having an outage, its slowness shows up as your timeout.
DNS-related errors, or the domain doesn't load at all
If the *.vercel.app address of your project works but your custom domain doesn't, the problem is the domain: DNS records, an expired registration, or a recent DNS change. Vercel's Domains settings show whether the domain is correctly configured and what records it expects.
An error page with no Vercel code
If you see your own app's error screen, or a blank page, the request reached your app, and your app failed. Open the browser console (right-click → Inspect → Console) for the real error. For apps built with AI tools, our guide on blank white screens covers the common causes.
Step 4: Compare with the last working deploy
The most common reason a Vercel site breaks is the most recent change. Open the project's Deployments list:
- When did the problem start? Was there a deployment just before it?
- Did the latest deployment's build succeed, or fail?
- Did someone change an environment variable? Changed variables only take effect in new deployments, so a change and a later redeploy can break things at an unexpected time.
Now try the preview URL of the previous deployment (each deployment has its own address). If the previous one works and the current one doesn't, it's your code or configuration — not Vercel.
If it's you: get back online first, debug second
Vercel lets you put the previous version back without rebuilding. Its docs on rolling back a production deployment say a rollback points production traffic to the deployment you choose, at the routing level, so it takes effect within seconds.
- Open the project's Deployments.
- Find the last deployment that worked.
- Open its menu (the three dots) and choose Instant Rollback.
Vercel's docs note that on the Hobby plan you can only roll back to the immediately previous production deployment; Pro and Enterprise can roll back to any previous production deployment.
Once you've fixed the problem and deployed the fix, use Promote on the new deployment to make it live again — after a rollback, new deployments aren't automatically promoted to production until you do.
Then debug calmly with the Logs of the broken deployment.
If it's Vercel: what you can do
- Don't redeploy over and over. If builds or the network are affected, extra deploys can make things more confusing.
- Tell your users. A short note — "Our hosting provider is having an outage; we're watching it" — prevents a pile of support messages. If you have a status page, update or link it.
- Follow the incident. Vercel posts updates on its status page; our Vercel status page shows when it's resolved.
- Check after it's resolved. When the incident is over, open your site and its main pages. A failed build during the incident may need a redeploy.
A five-minute routine to remember
- Vercel status — is there a matching incident?
- Other projects and other services — is it only this one?
- The error code — 404/DEPLOYMENT_NOT_FOUND, 500, 504, or DNS?
- Deployments — did it start with a deploy? Does the previous one work?
- Rollback if it's you; wait and communicate if it's Vercel.
Know before your users do
The worst part of most outages is finding out late. Pingbuddy watches your site every 5 minutes (every minute on Pro), confirms a failure with a second check, and alerts you on Telegram or by email with what's wrong in plain English, a screenshot of what visitors see, and the likely cause.
It also helps with exactly the question in this article. Pingbuddy notices when your site is hosted on Vercel, and when Vercel has an outage you get a message saying your app may be affected — and that it's not your code. If your own site is down at the same time, the alert says that too. And because it notices new deployments, a site that broke right after you deployed gets an alert that says so.
It's free for up to 20 sites. Paste your site's address on the home page to start, or run a free checkup first: it checks your site's response, SSL certificate and domain expiry, and looks for secret keys left in your public code.