Skip to content

Production Environment

The production environment is the live version of a website or application used by real visitors and connected to real operational systems.

The production environment is the live website or application used by real visitors.

It is the environment where approved changes become publicly operational.

What “Production” Means

A project may contain several environments:

Local development
      ↓
Staging
      ↓
Production

Production is the environment where:

  • Customers submit forms
  • Orders are placed
  • Reservations are made
  • Search engines crawl public pages
  • Analytics collect real activity
  • Real integrations operate

That makes changes to production materially different from experimental development work.

Production Data

Production can contain information such as:

  • Customer records
  • Orders
  • Form submissions
  • Analytics
  • Members
  • Reservations
  • Payment references

That information should not automatically be copied into development or Staging Environments.

Protecting Production

Changes to important production systems may benefit from controls such as:

GitHub supports branch-protection rules that can require reviews, status checks, or successful environment deployments before code is merged. GitHub Docs: About protected branches

Why It Matters

Production should represent the intentional, supported state of the website.

When people make undocumented changes directly in production, it becomes difficult to answer:

  • What changed?
  • Who changed it?
  • Can we reproduce it?
  • Is staging still accurate?
  • Can we undo it?

Common Problems

Common problems include:

  • Editing production files directly
  • Testing payment behaviour with real customers
  • Production credentials copied into development
  • Repository does not match production
  • No Backup & Restore
  • Changes deployed without verification
  • No clear Rollback path

How to Improve

Treat production changes as deliberate releases.

The amount of process should match the site's risk.

A small website may need a simple checklist.

A transactional system may need automated testing, review, staging, deployment controls, and monitoring.