Skip to main content

Glossary · architecture

Monolith

Definition

A monolith is an architecture where all application components (frontend, backend, data access layer) are developed as a single codebase and deployed as a single unit. Fast and simple to start; migrating to microservices is considered when scaling is needed.

Published: 2026-05-05Updated: 2026-05-05

Detailed explanation

Monolithic architecture was the default until the mid-2000s. All features run in the same application process, communicating via shared memory and direct function calls. One artifact to deploy.

When monolith? New project / MVP phase — microservice overhead isn't needed yet. Small-medium teams (3-8 people). 'Majestic Monolith' concept: modular but single deploy, maintainable without microservice complexity.

Monolith → Microservice migration: Strangler Fig pattern is most common — new features go to microservices, old code gradually decouples. Big Bang rewrites are risky; incremental decoupling is preferred.

Use cases

MVP and startup's initial product

Small-medium team software

Internal (intranet) application

Early-stage SaaS

Fixed-scope enterprise application

Pros

  • +Simple deployment (one artifact)
  • +Fast development (monorepo, shared code)
  • +Easier debugging (single process trace)
  • +Low initial infrastructure cost

Cons

  • Scaling is hard (everything scales together)
  • Grows into a 'big ball of mud'
  • One failure can bring down the whole system
  • Restricted to one technology stack

Related terms

MicroserviceDockerAPITechnical Debt

Related services

Planning a project around Monolith?

In a 30-minute discovery call we share a written architecture + cost + team recommendation tailored to your project.

Start a discovery call