When Not to Use Micro Frontends
Micro frontends solve real problems for organizations at scale. They also introduce complexity that can outweigh their benefits in certain contexts. This page describes when micro frontends are not the right choice and what alternatives to consider. For the full picture of trade-offs, see Benefits and Trade-offs.
When Micro Frontends Are Not the Right Choice
Section titled “When Micro Frontends Are Not the Right Choice”Small Teams (1–2 Teams)
Section titled “Small Teams (1–2 Teams)”The primary benefit of micro frontends is reduced coordination between teams. If you have one or two teams working on the frontend, coordination overhead is already low. Introducing multiple applications, composition logic, and cross-boundary communication adds complexity without meaningful gain.
Rule of thumb: If your team can ship features without waiting on other teams, the coordination benefits of micro frontends likely do not apply.
Simple Applications with Limited Scope
Section titled “Simple Applications with Limited Scope”Micro frontends shine when the application has distinct domains with clear boundaries—product catalog, cart, checkout, account settings. A simple application (e.g., a single-purpose tool, a landing page with a contact form) rarely has enough complexity to justify the overhead.
Splitting such an app into micro frontends would create artificial boundaries and operational burden for little or no benefit.
Prototypes, MVPs, and Early-Stage Products
Section titled “Prototypes, MVPs, and Early-Stage Products”Speed and flexibility matter most in early stages. You need to iterate quickly, pivot if necessary, and validate assumptions. Micro frontends require upfront investment in composition infrastructure, deployment pipelines, and cross-team coordination—all of which slow you down when the product itself is still in flux.
Start with a modular monolith or a simple SPA. Revisit micro frontends when the product has stabilized and the organization has outgrown a single-team model.
When Tight UI Consistency Is Critical and Hard to Enforce
Section titled “When Tight UI Consistency Is Critical and Hard to Enforce”Some applications demand pixel-perfect consistency—brand-heavy marketing sites, design-forward applications, or products where UX polish is a core differentiator. With multiple teams and potentially multiple frameworks, maintaining that consistency requires strong governance: design systems, shared components, and rigorous review.
If your organization lacks the discipline or tooling to enforce consistency, micro frontends can lead to a fragmented, inconsistent user experience. In such cases, a single application with a strong design system may be safer.
When the Organization Lacks DevOps Maturity
Section titled “When the Organization Lacks DevOps Maturity”Micro frontends assume you can:
- Build and deploy multiple applications independently
- Manage version compatibility between shell and micro frontends
- Monitor and observe a composed system
- Handle incidents across distributed ownership
Organizations without mature CI/CD, infrastructure-as-code, and observability practices will struggle. The operational burden can become a bottleneck rather than an enabler.
When Performance Budgets Are Extremely Tight
Section titled “When Performance Budgets Are Extremely Tight”Micro frontends can duplicate dependencies and increase baseline JavaScript. If your application must load on slow networks or low-end devices—or if you have strict performance budgets (e.g., < 100 KB of JS)—the overhead of multiple frameworks and composition may be unacceptable.
You can mitigate this with shared dependencies and careful loading strategies, but doing so adds complexity. For performance-critical applications, weigh the cost carefully. If your core user base is on low-end devices or unreliable networks, the extra bytes and requests introduced by micro frontends may be unacceptable.
Alternative Approaches to Consider
Section titled “Alternative Approaches to Consider”When micro frontends are not the right fit, these alternatives often provide a better balance of benefits and complexity. Choose based on your primary goals: code reuse, consistency, deployment flexibility, or team scalability.
Modular Monolith (Well-Structured Single App)
Section titled “Modular Monolith (Well-Structured Single App)”A modular monolith keeps one deployment unit but structures the codebase into clear, bounded modules. Each module has a well-defined interface; teams work within their module boundaries. You get many of the benefits of separation (clear ownership, reduced coupling) without the operational complexity of multiple deployments.
This is often the best starting point. You can later extract modules into micro frontends if the organization and product demand it.
Component Libraries and Design Systems
Section titled “Component Libraries and Design Systems”If your main goal is code reuse and consistency—not independent deployment—invest in component libraries and design systems. Shared UI primitives, tokens, and patterns reduce duplication and improve consistency without introducing composition complexity.
Many organizations need this regardless of whether they adopt micro frontends. It is a complementary approach, not a replacement.
Monorepo with Shared Tooling
Section titled “Monorepo with Shared Tooling”A monorepo with shared build configs, linting, and testing can improve developer experience and consistency. Teams work in separate packages or apps within the same repo, sharing tooling and—optionally—components.
Monorepos do not imply independent deployment, but they can be a stepping stone. Some micro frontend setups use monorepos; the key is whether you need independent deployment and ownership, not just separate packages.
Feature Flags for Gradual Rollout
Section titled “Feature Flags for Gradual Rollout”If your concern is risky deployments rather than team autonomy, feature flags can help. Ship code behind flags, enable gradually, and roll back without redeploying. This reduces release risk without splitting the application. Feature flags work well alongside micro frontends too—they can control which micro frontends are visible or which versions are served.
Server-Side Rendering (SSR) and Islands
Section titled “Server-Side Rendering (SSR) and Islands”For applications where initial load performance is critical, server-side rendering or islands architecture (e.g., Astro, Fresh) may offer a simpler path than micro frontends. These approaches reduce JavaScript on the client and improve perceived performance. They do not address team autonomy or independent deployment, but they solve different problems—and sometimes those are the problems you actually have.
Decision Checklist: You Might Need Micro Frontends If…
Section titled “Decision Checklist: You Might Need Micro Frontends If…”- You have 3+ teams working on the same frontend and coordination is a bottleneck
- Teams need to deploy independently and on different schedules
- You need to migrate or modernize incrementally (e.g., legacy app + new features)
- Different domains have different technology requirements (polyglot is beneficial)
- The application has clear domain boundaries (product, cart, checkout, etc.)
- Your organization has DevOps maturity (CI/CD, monitoring, ownership culture)
- You can invest in composition infrastructure and shared dependency management
If most of these are true, micro frontends may be appropriate. If few or none apply, consider the alternatives above. The checklist is a starting point—not a definitive test. Use it to structure discussions with your team and stakeholders.
When in Doubt, Start Simple
Section titled “When in Doubt, Start Simple”If you are unsure whether micro frontends are right for you, err on the side of simplicity. A well-structured modular monolith is easier to evolve into micro frontends later than a poorly implemented micro frontend system is to simplify. Build the foundations—clear boundaries, good APIs, solid DevOps—and let the architecture emerge from real needs rather than premature optimization.
Exploring Alternative Architectures
Section titled “Exploring Alternative Architectures”Choosing the right frontend architecture depends on your context—team size, product stage, performance requirements, and organizational culture. Frontend Architecture Patterns offers an interactive comparison of MPA, SPA, SSR, Islands, Micro Frontends, and more, with guidance on when each pattern fits. It is a valuable resource for teams evaluating their options.
Revisit as You Grow
Section titled “Revisit as You Grow”The decision to avoid micro frontends today does not mean they are wrong forever. As your team expands, your application grows, and coordination becomes a bottleneck, reconsider. The alternatives in this page—modular monolith, component libraries, monorepos—can serve as stepping stones. Build clean boundaries and strong foundations now; the right time for micro frontends may emerge later. For a complete picture of what you gain and give up, see Benefits and Trade-offs.
Go Deeper in the Book
This topic is covered in depth in Chapter 2 of Micro Frontends Architecture for Scalable Applications, with detailed examples, diagrams, and production-ready patterns.