DIAGNOSIS

Your Bolt app works in preview but the published link is blank

The preview and the live site are two different copies of your app, and the live one is usually missing the settings it needs to start.

8 min read
ON THIS PAGE
SHORT ANSWER

Why does my Bolt app work in preview but not on the published URL?

Because they are two different copies. The preview runs in a temporary sandbox in your browser tab with all your keys and test data at hand. The published site is rebuilt somewhere else from scratch, and if the settings your app needs were not re-added on the host, it crashes on startup and shows a white screen.

The version inside Bolt — the little window next to the chat — is a rehearsal. It runs temporarily, at a temporary address, and it disappears when the session ends. It is fine for showing a friend on a call. It is not a product anyone can use.

The published link is a completely separate copy. Your files got packed up, sent elsewhere, and rebuilt by a machine that has never seen your Bolt chat. Everything the rehearsal had lying around has to be re-supplied on the other side.

When it isn't, the rebuilt copy loads, immediately asks for something that isn't there, and gives up. No error, no message. Just white. That is by far the most common version of this, so start there.

Did my secret keys get copied over?

Probably not, and that is the first thing to check. Your app holds keys — the string that says where your database lives, an API key for payments, a login secret. In Bolt these sit in a Secrets panel. The technical name is environment variables, which just means settings kept outside the code so you don't accidentally publish your passwords.

Those settings do not automatically ride along to wherever your app gets published. A troubleshooting guide for common Bolt errors describes exactly this sequence: the settings exist in Bolt, they never reach the host, the build succeeds anyway, the app starts with nothing where the keys should be, and it dies on a generic error.

There is a sneakier second layer. For most of these apps the keys are baked into the code when it is built, not read fresh when someone visits. A long-running discussion on the Vite project — the build tool underneath most Bolt apps — is full of people expecting a setting change to take effect and finding nothing changes until the app is rebuilt. Adding the keys is not enough. You have to publish again afterwards.

  1. Open your host's settings
    Netlify, Vercel, wherever the published link actually lives. Find the environment variables section.
  2. Copy every key across
    Take each one from Bolt's Secrets panel. Same names, exactly. Capital letters matter.
  3. Publish again
    Not refresh. Publish. Until the app is rebuilt, the new settings are not in it.
  4. If you use Supabase, do it twice
    The part of your app that runs on Supabase's side has its own separate place for secrets, and Bolt then needs prompting to refresh the connection.

Why does the live site still show my old version?

Because publishing once creates a link between Bolt and your host — it does not create a permanent live feed. The site isn't broken, it's just wrong: missing the thing you fixed yesterday.

There is a thread on Netlify's own support forum from someone who built in Bolt, published to Netlify, kept editing in Bolt, and could not work out why the live site never changed. It is a genuinely reasonable thing to be confused about.

A related trap: if you forked or duplicated your Bolt project, the copy is not connected to your existing site — forking loses the link and creates a new site instead. You may be publishing perfectly, to an address nobody is visiting. Check the address bar against the link your users have.

Why do I get "page not found" instead of a blank page?

A real page with words on it means something different from a white screen: the files probably arrived in the wrong shape. When someone on the Netlify forum could not get a Bolt project to upload, a community moderator said the files were likely nested inside a folder, or missing the main index file at the top level.

This happens most when you download a zip from Bolt and drag it in by hand. You drag the folder containing the folder, the host looks at the top level, sees no front page, and shows a not-found. If you dragged and dropped, that is your first suspect.

One variation is worth knowing. If your home page loads fine but pasting a deeper link directly gives a not-found, that is a different problem again — and it is worth saying to Bolt in exactly those words: home page works, direct links don't.

What if my app needs a machine that stays running?

Bolt will happily write code that expects a computer sitting there permanently, listening. Plenty of hosts do not work that way. A community deployment guide for Bolt users lists the patterns that don't survive the move: code that starts its own long-running server, or connects to a database on the same machine.

You do not need to fix this yourself. You need to be able to say it, so Bolt fixes the right thing rather than guessing.

What should I paste into Bolt?

Something specific. Vague prompts get vague fixes and burn tokens — the person in that first Netlify thread said they had spent a million tokens trying to solve a blank live page.

PASTE THIS INTO BOLT
My published site shows a blank white page. The preview inside Bolt works perfectly. I have added all of my Secrets to my host's environment variables and published again, and it is still blank. Check whether the app crashes on startup because a required setting is missing or has the wrong name, and check whether anything in this project needs a server that stays running.

If the white screen survives that, open the published site, right-click, choose Inspect, and click Console. The red line at the top is the app saying what it wanted and didn't get. You don't have to understand it — paste it into Bolt word for word.

How do I find out before a customer does?

You put something outside your app that loads the real published link on a schedule and tells you when it doesn't come back right. In every one of those forum threads, the person found out by looking. Somebody published, went to bed, and the live page was blank until they happened to open it.

That is the actual gap. Not the white screen — the silence around it. There are plenty of tools for this. Most were built for engineers, and it shows.

ToolWhat it asks you to set upWhat it tells youFree optionBest for
UptimeRobotA link, how often to check, and which server replies count as a failureUp or down, plus response times and historyYes, generousSomeone comfortable with the settings
Better StackThe same, plus rules for who gets alerted and whenDetailed reports and timelines; phone and Slack alertsYes, limitedTeams with an engineer
PingdomChecks, locations and thresholdsDeep performance data, checks from many countriesNo, paidBusinesses that need real depth
Uptime KumaYou install and run it yourself on a server you rentWhatever you configure it toFree, but you host itPeople who enjoy this
FomioA link. That's the whole setup.Working, Having trouble or Down, plus what likely went wrong in plain EnglishYes — 1 app, checks every 5 minutes, email alerts, 7 days of history, no cardSomeone who built the app and isn't an engineer
Tools that watch a published link, and who each one suits

Be fair about this. The engineer-facing ones are genuinely stronger in places: they check from more countries, keep longer records, and can reach you by phone, text or Slack in the middle of the night. Fomio tells you by email — not SMS, not WhatsApp, not Discord — and that is worth knowing before you pick.

What Fomio does differently is what happens after the break. It says which of three things is true, describes what likely went wrong in words you already use, and on the Builder plan it writes the prompt for you to paste straight back into Bolt. Builder also watches three apps and checks every minute; Pro adds a public status page for your users and a year of history. Current prices are on fomio.ai/pricing.

What should I do today?

In this order: add your Secrets to your host's settings, publish again, and confirm you are testing the same link your users have. That clears most of these.

Then put something in place to watch the published link, so the next time it goes white you hear it from a machine rather than a customer. If you want that to be one link and three plain words, Fomio's free plan does it without a card.

Questions people also ask

WHERE THIS COMES FROM

  1. Getting Blank Page On Live Site - Working in Preview In Bolt.NewNetlify Support Forums, 25 November 2024
  2. Unable to upload my bolt project to netlify after trying everythingNetlify Support Forums, 16 July 2025
  3. Updating Sites Deployed with Bolt.NewNetlify Support Forums, 5 November 2024
  4. My bolt website is not working when deployed to netlifyNetlify Support Forums, 19 June 2025
  5. Netlify for hostingBolt Support Docs
  6. Manual DeploymentBolt Support Docs
  7. Netlify Deployment GuideBolters.io, 6 March 2025
  8. ENV variables don't work in the environments, only in build (Issue #16069)Vite, GitHub, 1 March 2024
  9. Bolt.new Not Working? Fix the 10 Most Common ErrorsAppStuck Blog
  10. How to deploy a Bolt.new app to productionlivemy.app
  11. Bolt app broken after deploy? Key fixesNightlamp
KEEP READING
Read this as markdown