Deploy
deh-PLOY
The process of releasing code to servers where users can access it.
A deploy (deployment) is the process of taking built code and putting it on servers where end users can access it. It is the last step between writing code and users experiencing it.
Modern deployments are automated, incremental, and reversible. The days of FTPing files to a server at 2am on a Saturday are (mostly) over. Teams deploy through CI/CD pipelines that build, test, stage, and release code with minimal human intervention.
Deployment frequency is a key indicator of engineering health. High-performing teams deploy multiple times per day. Lower-performing teams deploy weekly or monthly. Frequent deploys mean smaller changes per deploy, which means less risk per deploy and faster rollback when something goes wrong.
Examples
A Vercel deployment runs automatically.
A developer merges a PR to main. Vercel detects the change, builds the Next.js application, generates static pages, and deploys to the edge network. The new version is live in under 2 minutes. The previous version remains available for instant rollback.
A staged deployment catches a problem.
The deployment pipeline deploys to staging first. The QA team tests the staging environment and discovers a form validation bug. The bug is fixed on a new branch, merged, and the pipeline runs again. The bug never reaches production users.
A deployment causes an outage.
A deploy introduces a database query that is efficient in testing but causes a timeout under production load. Error rates spike within minutes. The on-call engineer triggers a rollback to the previous version. Service recovers in 3 minutes. The team adds a load test to the deployment pipeline.
In practice
Read more on the blog
Frequently asked questions
How often should a team deploy?
As often as possible. DORA research shows that elite teams deploy multiple times per day. More frequent deployments mean smaller changes, lower risk, and faster feedback. If deploying is scary, the fix is to deploy more often with smaller changes, not less often with bigger changes.
What is the difference between deploying and releasing?
A deploy puts code on servers. A release makes it available to users. You can deploy code to production behind a feature flag (deployed but not released) and then turn on the flag later (released). This separation gives you control over when users see changes.
Related terms
The process of compiling source code into a runnable application or deployable artifact.
Continuous integration and continuous deployment: automating code testing and delivery to production.
A pre-production environment that mirrors production for testing before release.
The live environment where real users interact with the application.
Reverting a deployment to a previous known-good version when the new version causes problems.
A deployment strategy using two identical environments to enable instant cutover and rollback.

Want the complete playbook?
Picks and Shovels is the definitive guide to developer marketing. Amazon #1 bestseller with practical strategies from 30 years of marketing to developers.