Magento15 Nov 2026· 6 min read
When to build a custom Magento 2 module instead of installing dozens of ready-made extensions
Use a ready-made extension for generic problems the market solves well. Build a custom module when the rule belongs to your business, when several extensions conflict, or when an extension ships ten times more code than you need.
The problem with a store running 80 extensions
Every extension adds plugins, observers, tables, JavaScript and CSS. Over time they overlap: two change the same method, three load scripts at checkout, and an upgrade becomes a gamble.
The symptoms are slowness, intermittent errors and fear of updating.
When a ready-made extension is the best choice
- Official payment and shipping gateways, maintained by the provider.
- Standard, mature features with a good reputation and frequent updates.
- When maintaining your own code costs more than the licence.
When a custom module is worth more
- Rules specific to your business (pricing, stock, approval, B2B flows).
- Integrations with internal systems or ERPs with their own contract.
- When you use 10% of a heavy extension.
- When several extensions handle parts of the same flow and conflict.
How a good module is built
A well-made module doesn't create a hidden second platform inside the store. In practice:
- Service Contracts and dependency injection, without overriding the core.
- Plugins and observers only where they need to run.
- Admin configuration instead of hard-coded values.
- Upgrade compatibility designed in.
Examples I have published
My GitHub has open Magento 2 / Adobe Commerce modules that solve specific pains with little code: hreflang tags on CMS pages across store views, shipping estimates by Brazilian postcode on the product page, and per-payment-method discounts and instalments.

By Roni Clei Santos
Senior Full-Stack · Adobe Certified Expert
Keep reading
- PerformanceSlow Magento 2 store: how to improve your Google PageSpeed score and Core Web Vitals (from Lighthouse to SQL)
- Landing PagesWhy isn't your landing page converting? How speed (Lighthouse 100) and UX multiply your sales
- IntegrationsHow to integrate Magento / Adobe Commerce with ERP and CRM without blocking checkout (a RabbitMQ architecture)