What Does Deployment Mean? A Plain-English Explanation
Turning a preview only you can see into a real, public site anyone can reach. What actually happens when you click Publish, and why it can fail even when preview worked perfectly.
Quick answer
Deployment is the step that takes your project out of your builder's private preview, visible only to you while you're working, and makes it into a real, public site anyone with the URL can visit. Clicking Publish in Lovable, Base44 or Bolt.new runs a build (compiling your project into the exact files a browser will load), then puts those files somewhere reachable over the internet. It isn't automatic and it isn't continuous: the live site is a snapshot of whatever was deployed last, not whatever your project currently looks like in the builder, which is exactly why a fix that looks solved in preview can still be broken for real visitors until you deploy it again.
Tools for this build
Custom Prompt Builder
Turns your task, in your own words, into a prompt with clear limits for your AI coding agent.
POPIA Compliance Checker
Worth running before, not after, your first real deploy with customer data.
PayFast Webhook Generator
Generates the backend code a real deploy needs to receive a payment webhook.
The one-sentence version: preview is private, deployed is public
While you're working inside Lovable, Base44 or Bolt.new, you're looking at a preview, a live view of your project that exists for you, the person building it. Nobody else can reach it by default. Deployment is the specific action that changes that: it takes the current state of your project, builds it, and puts the result somewhere with a real, public address, at which point anyone who has that address, or your domain once it's pointed there, can actually load your site.
This distinction matters the first time something behaves differently in the two places. Preview and deployed aren't always running under identical conditions, which is exactly why "it works when I look at it" and "it works for a real visitor" aren't automatically the same claim.
Preview vs. deployed
Preview
Visible only inside your builder:
A live view for you while you work, not reachable by anyone else
Deployed
Built and published to a real address:
A snapshot, reachable by anyone, that only changes on your next deploy
AI Build · aibuild.co.za
What actually happens when you click Publish
Two things happen, in order, whether or not the platform shows you either step directly. First, a build runs: your project's actual source files get compiled, bundled and optimised into the exact static files (and, if your project has one, backend functions) a browser and server will actually use. Second, those built files get pushed somewhere with a real public address, on infrastructure the platform manages for you, or your own hosting if you've exported and deployed independently. The build step is the one most worth knowing about, since it's also the step most likely to fail on its own, separately from whether your project's underlying logic is correct.
Why "worked in preview, broke once deployed" is almost always one of two things
This exact phrase usually narrows to two likely causes worth checking in order. The first, and most common: an environment variable that existed in your builder's preview session simply wasn't carried over to the deployed environment, covered in full in our guide to what an environment variable is. The second: a setting on the host doesn't match your build, such as the folder it publishes or the path your pages load their files from, covered in our guide to fixing a blank screen after deploying. Checking both before assuming your actual code is broken saves real debugging time.
Deploying to a builder's own subdomain vs. your own domain
Every deploy needs an address, and the simplest one is whatever subdomain your builder gives you by default. That's a complete, real deployment, fine to use as-is. Moving to your own .co.za domain doesn't create a second deployment, it's a DNS change layered on top of the one that already exists, pointing a domain you own at infrastructure your builder already deployed to. Our guide to connecting your own domain covers this exact step: the address changing, not the deploy mechanism underneath it.
Not every deploy looks the same
AI website builders usually deploy to their own managed hosting with one click, no separate hosting decision required. A genuinely different path exists too: exporting your project and hosting it yourself, which our guide to where to host an AI-built website weighs up, including what moves and what stays behind. Same underlying concept, a build followed by a public address, different amounts of infrastructure you're responsible for.
Where to go next
- The most common cause of "worked in preview, broke once deployed": What Is an Environment Variable?
- A deploy that shows nothing, diagnosed cause by cause: Blank Screen After Deploying? 4 Causes on Netlify or Any Host.
- Moving from a builder's subdomain to your own: How to Connect Your Domain to Your AI-Built Website.
Not affiliated with the platforms we write about
AI Build South Africa is an independent resource. We're not endorsed by, or an official partner of, PayFast, Yoco, Peach Payments, Ozow, Meta, Lovable, Base44, Bolt.new or Anthropic. We do participate in affiliate and referral programmes with some of these providers, including Base44. See our Disclaimer for the full disclosure and our Terms of Service for the wider terms.
Frequently asked questions
What's the difference between "publish" in my AI builder and "deploying" to my own domain?
They're the same underlying action, build and push the current version live, just to two different addresses. "Publish" inside Lovable, Base44 or Bolt.new puts your site on that platform's own subdomain, something like yourapp.lovable.app. Pointing your own .co.za domain at it, or exporting and hosting it yourself, is the same deployment with a different, more permanent address on top.
Why does my site work in preview but break once deployed?
Almost always one of two causes. Either an environment variable that existed in your builder's preview session wasn't carried over to the deployed environment, or a setting on the host doesn't match your build, such as the folder it publishes or the path your pages load their files from. Both are worth checking before assuming the code itself is broken.
What is a "build," and why does it matter?
A build is a step that runs before your site goes live, taking your project's actual source files and compiling, bundling and optimising them into the exact files a browser will load. It's not optional and it's not the same as the code just running: a build can fail even when the underlying logic is correct, most often because of a missing environment variable or a misconfigured output setting, which is why a deploy can fail at this step specifically rather than at the code itself.
Do I need a server to deploy a website?
You need somewhere for the built files to live and be served from, but it doesn't have to be a server you manage yourself. AI website builders usually handle this for you by default. Exporting your project and hosting it yourself is a real alternative, but it's a choice, not a requirement most builds face.
What happens if I update my code after deploying?
Nothing changes on the live site automatically. Deploying is a snapshot: the version live right now is whatever was deployed last, not whatever your project currently looks like in the builder. Every further change needs its own deploy before visitors see it, which is also why a change that looks fixed in your builder's preview can still be broken for real visitors until you deploy it again.
Is deploying to a subdomain like myapp.lovable.app the same as deploying to my own domain?
The deployment itself, yes, same build, same live files. What differs is the address pointing at it. Moving to your own .co.za domain is a DNS change layered on top of an already-working deployment, not a second deployment.
What does it mean to deploy something?
To deploy is to take what you built and put it where it's meant to run for real, so people can use it. For a website, that means putting the finished files on a server connected to the internet, under an address anyone can open, instead of the private preview only you can see.
What does "deployed" mean in computing?
A deployed program or website is live: it's installed where it's meant to run and open to the people who use it. "It's deployed" means the current version is out there, not waiting in a preview or on someone's laptop. A project can be deployed many times, and each deploy replaces the live version.
What does deployment mean in business?
Outside software, deployment means putting people or resources where they're needed, such as deploying staff to a new branch. The software meaning grew from the same idea: moving what you built from where it was made to where it does its job. On this site, deployment always means the software sense.
Related reading
- What Is DNS?: the record that has to point at your deployment before anyone else can reach it.
- Environment Variables Not Working After Deploy: the applied version of this page's most common failure mode.
- Where to Host an AI-Built Website: whether your project can leave its builder, and what moves with it.