Product & Delivery

What is Staging Environment?

Short answer

A staging environment is a private copy of a live system, running the same code and configuration, used to test changes before they reach customers. Its value depends on similarity: a staging site on a different database version, or with an empty content set, passes tests that production then fails.

Also called: Staging site, Pre-production environment, Test environment

Most teams run three environments: local machines for development, staging for review and acceptance testing, and production for customers. Staging is where a client sees work in progress, so it needs a stable address, credentials that can be shared, and protection from search indexing — an unprotected copy of a site competes in search results with the site it copies.

Data is the part teams get wrong. Copying production data to staging exposes real customer records to anyone holding the staging password, while an empty database hides every bug that only appears at volume or with awkward real-world values. Generated or anonymised data of the same shape avoids both. The slower failure is drift: once staging and production differ in database version, environment variables or dependencies, a passing test on staging stops meaning much.

Related terms

User Acceptance Testing (UAT)

User acceptance testing is the stage where the people who will actually use a system verify it against the agreed requirements before launch, working through real scenarios on a staging environment.

Project Handover

Project handover is the transfer of a finished system and the knowledge needed to run it: production access, hosting and domain accounts, environment variables, deployment steps, and documentation of how the parts fit together.

Sprint

A sprint is a fixed working period, commonly one or two weeks, in which a development team commits to a defined set of work and ends with something demonstrable.

robots.txt

robots.txt is a file at a site’s root that tells automated crawlers which paths they may request.

Reading definitions because you are scoping a project? Skip ahead and just ask.