Skip to content
§
§ · journal

Choosing a Magento development company.

An engineering evaluation rubric for 2026 - architecture knowledge, performance evidence, security cadence, headless capability, data discipline, and the honest stay-or-migrate question every Magento merchant should ask.

Architecture. Performance. Security. Headless. Data discipline.

Most articles on choosing a Magento development company are buyer-framed - archetypes, certifications, references, the discovery-call playbook. This one is engineer-framed. The five technical signals that actually predict whether a Magento development company will ship clean work on your store are architecture knowledge (Magento 2 declarative schema, ServiceContracts patterns, GraphQL coverage), performance evidence (Varnish hit rate, Redis configuration, MySQL InnoDB tuning, ElasticSearch index health on 10K-plus SKU catalogs), security cadence (CVE response time under 14 days, named regression test suites, signed-commit GitHub hygiene), headless capability (shipped Hyva or PWA Studio work in the last 24 months, not a slide deck), and data migration discipline (field-mapping documents, redirect maps, customer-password strategies, B2B catalog recreation plans). Honest stance from us: Digital Heroes does not actively build new Magento 2 stores in 2026 - we help merchants migrate from Magento to Shopify Plus when the math says migrate. The engineering evaluation rubric below is universal regardless of platform decision. Use it whether you are staying on Magento, migrating to Shopify Plus, or hiring a Magento development company for a frontend rebuild on top of an existing store. New York and Delhi headquartered, 2,000-plus stores shipped since 2017, Trustpilot 4.9 across 70-plus reviews, DUNS 650878346, UN Global Marketplace Tier 1.

The marketing pitch tells you nothing.

Two Magento development companies can hold identical Adobe Solution Partner status, identical Adobe Certified Expert counts on the bench, and identical case-study lineups - and ship work of dramatically different engineering quality. The marketing pitch does not separate them. The architecture answers do.

The standard buyer's framework for choosing a Magento agency is well-covered already. Our companion piece on top Magento ecommerce agencies walks through five archetypes (enterprise systems integrator, dedicated Magento partner, hybrid Magento + Shopify partner, Adobe Commerce specialist, freelancer collective) and seven buyer-side evaluation criteria (Adobe Solution Partner status, named ACE engineers, B2B module experience, headless capability, multi-store architecture, AWS hosting depth, performance track record on 10K-plus SKU catalogs). It's the right starting point if you are building the shortlist.

This piece is the next layer. Once the shortlist is set, the question shifts from "which archetype fits our revenue tier?" to "which of these three shortlisted companies will actually ship clean Magento 2 code?" That question is engineering, not marketing. And the engineering evaluation has its own playbook - one that most merchants do not know to run, because their procurement process is calibrated for buyer-side criteria rather than technical signals.

Five technical evaluation pillars structure this piece. Section 3 covers Magento 2 architecture knowledge, the load-bearing signal that filters genuine engineering competence in 30 seconds of conversation. Section 4 covers the Adobe Commerce versus Magento Open Source split, with technical detail on what each edition actually ships. Section 5 covers performance fundamentals with the specific evidence to demand - Varnish hit rate, Redis configuration, MySQL tuning, ElasticSearch health. Section 6 covers security cadence with CVE response time, regression discipline, and GitHub hygiene as the three measurable signals. Section 7 covers headless capability honestly - Hyva Themes versus PWA Studio versus "we don't do headless." Section 8 covers data migration discipline, which has the same shape whether the work is into Magento, between versions, or out to another platform. Section 9 frames the honest stay-or-migrate question. Section 10 catalogs the red flags in the engineering proposal that signal a development company will not deliver. Then six FAQ answers and the next-step CTA.

One framing note before the technical depth begins. Digital Heroes is a Premier Shopify Plus partner agency. We help merchants migrate from Magento to Shopify Plus. We do not actively build new Magento 2 stores in 2026 - the engineering complexity, the smaller pool of senior PHP talent, and the math on retainer engineering all point our delivery focus to Shopify Plus. The honest framing matters because it shapes what we can ship for you and what we cannot. The engineering evaluation rubric in this article, however, is universal. Use it whether the answer is stay-on-Magento with another agency, migrate to Shopify Plus with us, or rebuild the frontend on Hyva with a Magento specialist while you decide.

Four questions. Thirty seconds. The architecture filter.

Bring these four questions to every shortlist call. The development companies worth signing answer all four cleanly, without rehearsal, in technical language a senior engineer recognizes. Companies that pivot to certifications or feature lists fail this filter.

Q1

What's your declarative schema strategy for module installs?

Magento 2.3 introduced declarative schema via db_schema.xml, replacing the legacy InstallSchema.php and UpgradeSchema.php install scripts. The right answer in 2026 names declarative schema with whitelist patches as the install pattern. Companies still writing PHP install scripts on new modules in 2026 are working from a 2017 mental model and shipping technical debt. The Adobe-published declarative schema documentation on developer.adobe.com is the source of truth.

Right answer: declarative schema with db_schema.xml and db_schema_whitelist.json patches. Wrong answer: InstallSchema/UpgradeSchema PHP scripts on new modules.

Q2

Where do you draw the ServiceContracts boundary?

ServiceContracts (the Api/ namespace inside a Magento 2 module) are the public, versioned API surface of the module. Models, blocks, and helpers in the Model/, Block/, and Helper/ namespaces are internal implementation details. A senior Magento engineer maintains a clean boundary - external code (other modules, REST/GraphQL clients, third-party integrations) talks to the module exclusively through the Api interfaces. Internal code (the module's own controllers, view templates, plugins) can use Model classes directly. Companies that mix Model and Api access throughout their codebase have not absorbed the ServiceContracts pattern; their modules will be brittle to upgrade and hostile to integrate.

Right answer: external access via Api/ interfaces only. Internal access can use Model/ directly. Wrong answer: random direct Model access from external integrations.

Q3

What's your GraphQL coverage strategy?

Magento 2 ships a GraphQL Storefront API by default with reasonable coverage of the core catalog, cart, customer, and checkout objects. A development company building custom modules in 2026 should ship custom GraphQL resolvers in those modules - typed schemas under etc/schema.graphqls, resolvers in Model/Resolver/, with proper authorization and caching. Companies that ship custom modules with REST endpoints only and ignore GraphQL are building for a 2018 architecture; any future headless storefront work (PWA Studio, custom Hydrogen-style frontend, mobile app) will require GraphQL coverage retroactively. The GraphQL developer guide covers the schema patterns; the Magento 2 GitHub repository is the reference implementation.

Right answer: typed GraphQL schema in custom modules with resolvers and caching. Wrong answer: REST endpoints only, "we'll add GraphQL when needed."

Q4

What's your indexer health strategy under load?

Magento's indexer architecture is the single most-misunderstood performance subsystem in the platform. Eight default indexers cover catalog product price, catalog product attribute, catalog category product, catalog product flat, stock, customer grid, design config grid, and catalogsearch fulltext - each rebuilds materialized denormalized tables that the storefront queries instead of joining the live EAV catalog. A development company shipping clean Magento work answers four sub-questions cleanly. One, scheduled mode versus update-on-save - all indexers should run in scheduled mode in production with a cron-driven async rebuild, not synchronous update-on-save which kills admin-panel responsiveness on catalogs above 5,000 SKUs. Two, the cron schedule for the indexer_reindex_all_invalid job, the indexer_update_all_views job, and the indexer_clean_all_changelogs job - the right answer names all three with their default intervals and the company's customizations. Three, MView changelog growth monitoring - the _cl tables grow without cleanup and become a quiet performance killer. Four, the cache-warming approach for the catalog_product_price index after price-rule changes. Companies that say "we run reindex when needed" without naming scheduled mode, the cron schedule, and changelog monitoring do not run real performance work on Magento.

Right answer: scheduled mode + named cron jobs + MView changelog monitoring + cache-warming after rule changes. Wrong answer: "we reindex when needed."

One additional architecture signal worth flagging: dependency injection discipline. Magento 2 uses constructor injection via the di.xml configuration to wire dependencies. Senior Magento engineers write small, focused classes with explicit dependencies in the constructor. Junior engineers (or worse, self-taught Magento 1 engineers who never absorbed Magento 2 patterns) reach for the ObjectManager directly and instantiate dependencies inline. The ObjectManager is explicitly forbidden in production code per Adobe's published coding standards; its presence in a development company's existing codebase (ask for a redacted module sample) is a strong signal of inexperienced engineering.

Two editions. Same core. Different feature surface.

A Magento development company should describe the Adobe Commerce versus Open Source split with technical detail on what each edition actually ships - not marketing language about "enterprise features." The five differences that matter are license, B2B module depth, Page Builder advanced, customer segmentation, and Adobe Sensei AI. The honest reframe is that Open Source is genuinely complete for $1M to $10M brands; Adobe Commerce earns its license fee at $10M-plus with specific feature requirements.

License and hosting. Adobe Commerce license fees start around $22,000 annually for entry-level GMV tiers and scale to $125,000-plus based on revenue. The license includes Adobe-managed cloud hosting (Adobe Commerce Cloud, built on AWS with Fastly CDN baked in), Adobe support SLAs, and the enterprise feature set below. Magento Open Source is free as in beer and as in speech - the full source code is on the Magento 2 GitHub repository, you self-host on AWS, MageMojo, Nexcess, or your own infrastructure, and you pay no license fee. Both editions ship the same core PHP codebase, the same Knockout.js admin interfaces, the same MySQL data model, the same EAV catalog, the same indexer architecture, the same PHP compatibility (8.2 minimum as of 2.4.8 in 2026, 8.3 supported, 8.4 in beta).

B2B module depth. Open Source ships B2B basics since 2.4.0 (2020) - company accounts, customer-segment-specific catalogs, requisition lists, NET payment terms. Adobe Commerce extends this with B2B advanced features - quote-to-cart workflows where the buyer requests a quote and the seller approves with discount overrides, multi-step internal approval workflows for purchase orders above threshold, customer-specific catalog visibility rules (a company sees only the SKUs their account is authorized for), and shared catalog inheritance across company hierarchies. The honest take: $5M to $30M B2B brands often run Open Source's B2B basics adequately. $30M-plus B2B brands with multi-tier wholesale flows usually need Adobe Commerce's B2B advanced. A development company should be able to map your specific B2B requirements to which edition's feature set they fit, with examples from their client roster.

Page Builder advanced. Both editions ship Page Builder for visual content editing. Adobe Commerce's Page Builder advanced adds dynamic blocks (content that varies by customer segment), targeted content rules (geo-targeted, behavior-targeted, segment-targeted), and a richer asset management interface. For brands shipping promotional content with personalization rules, the Page Builder advanced feature set is meaningful; for brands using Page Builder as a static content tool, the basic version in Open Source is sufficient.

Customer segmentation. Adobe Commerce ships customer segments with a rule-based segmentation engine - segments built on demographic data, purchase history, browsing behavior, cart contents, and arbitrary EAV attributes. The segments power dynamic pricing, dynamic content, and targeted catalog rules. Open Source has limited customer-group functionality (a fixed set of customer groups with manual assignment) but no rule-based segmentation engine. For brands running personalized merchandising, the segmentation engine is usually the strongest argument for the Adobe Commerce license.

Adobe Sensei AI and recommendations. Adobe Commerce includes Adobe Sensei-powered product recommendations (similar products, frequently bought together, customers also viewed, recently viewed, recommended for you) with a managed recommendation engine running on Adobe's infrastructure. Open Source has no native AI recommendation engine; brands plug in third-party recommendation services (Klevu, Algolia Recommend, Nosto, Bloomreach) at $300 to $3,000 per month depending on traffic tier. The honest math: a $20M brand spending $1,500/month on a third-party recommendation service is paying $18,000 annually, against a $22,000 license-fee delta to Adobe Commerce - the recommendation engine alone does not justify the license, but combined with B2B advanced and customer segments it usually does for brands above $10M GMV.

open source fits

Magento Open Source is right when

  • Revenue is $1M to $10M with strong in-house engineering retained
  • B2B requirements fit company accounts plus NET terms (no quote-to-cart or multi-tier approval)
  • Catalog complexity is real but not exotic (under 30K SKUs)
  • Hosting on AWS, MageMojo, or Nexcess is acceptable
  • Recommendation engine is a third-party tool (Klevu, Algolia, Nosto)
adobe commerce fits

Adobe Commerce earns its license when

  • Revenue is $10M-plus and the brand needs B2B advanced (quote-to-cart, multi-tier approval)
  • Personalized merchandising via customer segments is part of the strategy
  • Adobe Commerce Cloud's Fastly + AWS managed hosting is preferred over self-hosted
  • Adobe Sensei AI recommendations replace third-party services
  • Adobe support SLAs are required by procurement

Varnish. Redis. MySQL. ElasticSearch. Specific evidence.

Magento performance is hosting-determined and infrastructure-determined. A development company that has done real performance work names specific levers, specific numbers, and specific clients. Generic statements about "speed optimization" without measurable evidence are theatre.

Varnish full-page cache. Magento ships with built-in support for Varnish as the full-page cache backend. The right configuration uses the Magento-shipped VCL file (located in vendor/magento/module-page-cache/etc/varnish6.vcl) with customizations for the storefront. Ask the development company three sub-questions. One, what's the steady-state Varnish cache hit rate on production traffic? A healthy Magento store at scale runs 70 to 90 percent hit rate; under 50 percent indicates either heavy logged-in traffic (acceptable on B2B) or aggressive cache invalidation (a problem). Two, what's the cache TTL strategy by content type? Catalog category pages 1 to 4 hours typical, product detail pages 1 to 24 hours, CMS pages 24 hours to 7 days. Three, what's the cache invalidation pattern when a product attribute changes? The right answer involves Magento's tag-based invalidation via X-Magento-Tags headers and Varnish's ban command, not a full cache flush.

Redis configuration. Magento uses Redis as the backend for three subsystems - default cache (cache_id_prefix), page cache (when not using Varnish), and session storage. The right configuration uses three separate Redis instances or three separate database numbers on a single Redis instance. Default cache typically sized at 2 to 8 GB depending on catalog complexity, page cache 4 to 16 GB on busy stores, session storage 1 to 4 GB depending on logged-in user volume. Ask the development company about their env.php configuration for the cache backend, the maxmemory-policy setting (allkeys-lru is typical), and the persistence strategy (AOF or RDB, or both). Companies running Magento with file-based cache or default-option Redis are leaving 20 to 40 percent of available performance unused.

MySQL InnoDB tuning. Magento queries the MySQL catalog at every storefront request that misses Varnish. The InnoDB buffer pool is the dominant performance lever - sized at 50 to 75 percent of available system RAM on a dedicated database host, with the buffer pool instances split across CPU cores for concurrency. Three additional levers matter on busy stores. One, the tmp_table_size and max_heap_table_size settings (32 to 64 MB minimum to avoid temporary tables spilling to disk on heavy catalog queries). Two, the binary log retention strategy if running primary-replica replication. Three, the slow-query log threshold (1 second is typical; under 200ms on a healthy store). A development company that has run Magento at scale knows these levers and can describe their typical configurations.

ElasticSearch index health. Magento 2.4 made ElasticSearch the default catalog search backend, replacing the legacy MySQL-based search that scaled poorly above a few thousand SKUs. The right configuration runs ElasticSearch as a dedicated cluster (or managed via Adobe Commerce Cloud's bundled OpenSearch) with one shard per million catalog products, replicated across two nodes minimum for availability. Ask the development company about their index strategy on the catalogsearch_fulltext index, the reindex frequency (typically full reindex weekly with incremental updates on catalog change), and the analyzer configuration for product attributes (custom analyzers per language for multi-region stores). Companies that say "ElasticSearch is configured" without naming the shard count, replica count, and analyzer strategy have not actually tuned the search backend.

The honest performance number. A Hyva-themed Magento 2 store on properly-tuned infrastructure (Varnish full-page cache, Redis backends, InnoDB buffer pool sized correctly, ElasticSearch with proper sharding) lands LCP at the 75th percentile under 2.5 seconds on mobile per Core Web Vitals guidance. INP under 200 milliseconds at the 75th percentile is achievable on Hyva but rare on Luma. CLS under 0.1 is achievable on both with image-dimension discipline. A development company that has shipped this work has the field data to prove it. A company without field-data evidence is selling theory.

SubsystemHealthy 2026 numberRed flag
Varnish hit rate70-90% steady state< 50% (over-invalidation)
Redis cache backend3 separate DBs/instancesFile-based cache fallback
InnoDB buffer pool50-75% of RAMDefault 128MB on prod
ElasticSearch shards1 shard / 1M products + 2 replicasSingle-node cluster on prod
LCP (Hyva, p75 mobile)< 2.5 seconds> 4 seconds (frontend rebuild needed)
INP (p75 mobile)< 200 milliseconds> 500ms (heavy JS, Luma)
CLS (p75 mobile)< 0.1> 0.25 (unsized images)

CVE response. Regression suites. GitHub hygiene.

Magento has historically been the most-attacked ecommerce platform per merchant. The OWASP Top 10 for ecommerce, plus Adobe's published Magento Security Best Practices, are the baseline. Three measurable signals separate real security cadence from theatre.

Signal 1: CVE response time. Adobe ships Magento security bulletins on a roughly quarterly cadence (the official cadence is "as needed" but the practical pattern is February, May, August, November) with emergency patches in between when critical CVEs land. A competent Magento development company applies the patch to a staging environment within 72 hours of disclosure, runs regression tests for 5 to 7 days, and pushes to production inside two weeks. Slower than three weeks is institutional risk; the average exploit-in-the-wild window after a public Magento CVE disclosure is 14 to 30 days, with botnet-driven mass exploitation typical for unauthenticated RCE classes. Ask the development company for their last three patch deployments by date - the answer should be specific (Feb 11 patched APSB24-XX, applied to staging Feb 12, regression complete Feb 19, prod deployment Feb 21) not vague ("we patch when needed").

Signal 2: regression test discipline. Patching Magento without a regression test suite is institutional Russian roulette - the platform is large enough that small patches occasionally break unrelated subsystems (admin grids, catalog rules, checkout flows). The development company should describe their regression suite by name. The Magento Test Framework (MTF) for functional UI tests, PHPUnit for unit tests on custom modules, Behat for behavior-driven tests on the storefront, and Cypress or Playwright for end-to-end browser tests on critical paths (homepage, product detail, cart, checkout). Coverage targets - 60 percent unit-test coverage on custom modules, 100 percent functional-test coverage on the critical-path flows. A development company that runs no regression suite and patches Magento manually is shipping platform fragility into your production.

Signal 3: GitHub repository hygiene. Modern Magento engineering happens on GitHub with strict repository conventions. Look for branch protection on main (no direct pushes, mandatory PR reviews from a second engineer), signed commits via GPG (verifies the committer's identity), conventional-commits-style commit messages (feat/fix/refactor prefixes), a documented CODEOWNERS file (which engineers review which subsystems), a CI/CD pipeline with automated linting and test runs on every PR, and a documented release process (semantic versioning, changelog, tag annotation). Ask the development company for a redacted screenshot of their main repository's branch settings - real security cadence shows branch protection enforcement. Companies developing on FTP, on shared SSH access to staging servers, or on a single-branch GitHub repo without PR reviews are working a 2015 development model.

Bonus signal: open-source contribution history. Senior Magento engineers contribute to the platform - the magento/magento2 repository has accepted thousands of community PRs. Ask the development company for a count of merged PRs to magento/magento2 in the last 24 months from named engineers on their bench. Companies with no contribution history are not necessarily incompetent (closed-source contribution is fine) but companies with documented contribution depth carry a stronger architectural understanding of the platform's internals than companies that work exclusively on top of it.

Adobe's Magento security center publishes the security bulletin archive; subscribe to the security alerts mailing list and verify that any candidate development company is also subscribed. The Magento Marketplace (commercemarketplace.adobe.com) lists vetted modules with security review; a development company recommending Marketplace modules over arbitrary GitHub installs is following the lower-risk path.

Hyva. PWA Studio. Or "we don't."

Three honest answers exist on the question of headless Magento capability, and the right answer for any specific store depends on traffic volume, performance ceiling, and budget. Force a development company to pick one of three honest answers rather than the marketing pitch about "headless flexibility."

A1

Hyva Themes (the right answer for most $5M-$30M Magento merchants)

Hyva Themes is an Alpine.js + Tailwind CSS frontend layer that replaces Luma (Magento's default theme) with a simpler, faster rendering pipeline. Hyva keeps Magento's PHP backend intact (controllers, views, blocks all still server-rendered) but swaps the frontend rendering for a static-first, JavaScript-light approach. The performance improvement is real and measurable - Luma stores typically run LCP at 4 to 6 seconds on mobile; Hyva stores typically run 1.5 to 2.2 seconds. The trade-off is theme rebuild cost ($35K to $90K typically) and a one-time learning investment for the development company. Ask any Magento development company for a count of named Hyva clients shipped in the last 24 months. The right number is at least 3; companies with zero shipped Hyva work in 2026 are working from a 2022 mental model.

Right pick when: Luma performance ceiling has been hit, budget for $35K-$90K frontend rebuild exists, brand wants Magento-backend with modern-frontend.

A2

PWA Studio (the right answer for committed progressive-web-app brands)

PWA Studio is Adobe's React-based progressive web app framework for Magento, sitting on top of the GraphQL Storefront API as the data layer. The architecture is a separate Node.js/React frontend deployed to a CDN, with Magento providing the API layer only. The performance ceiling is higher than Hyva (instant page transitions via client-side routing, offline support via service workers, app-shell architecture for mobile-app-like UX) but the build cost is significantly higher ($120K to $400K typically) and the ongoing engineering burden is significant - PWA Studio releases trail Magento core releases by 2 to 6 months, so version upgrades require careful coordination. PWA Studio is right for brands genuinely committed to progressive-web-app UX as a strategic differentiator. It is wrong for brands that want "headless because it's modern" without specific PWA requirements.

Right pick when: progressive-web-app UX is a strategic differentiator, budget for $120K-$400K build exists, ongoing PWA Studio engineering retainer is funded.

A3

"We don't do headless" (a defensible answer)

A development company that says "we ship Luma stores with proper performance work" is making a defensible architectural choice for stores under $5M in revenue. Luma can be tuned to acceptable performance with discipline - Varnish full-page cache, image-format optimization (WebP via the catalog_product_image_pre filter), JavaScript-defer patterns on non-critical scripts, font-subsetting, and Knockout.js-rendering reduction. The honest ceiling is LCP around 3 seconds at the 75th percentile on mobile - above Hyva but below the Core Web Vitals 2.5-second threshold. For stores where performance is not the differentiator, Luma plus tuning is a legitimate answer. The wrong answer is a development company that promises "headless capability" without naming Hyva or PWA Studio as the specific framework, or that claims to "build custom headless solutions" without shipped code references.

Right pick when: store under $5M revenue, performance is not the strategic differentiator, budget cannot cover Hyva rebuild.

One additional headless consideration: the GraphQL Storefront API itself. PWA Studio uses it as the primary data layer; Hyva does not (Hyva remains server-rendered through Magento's PHP layer); custom headless frontends (Next.js, Remix, custom Hydrogen-style approaches) use it as the only data layer. A development company building any kind of headless work in 2026 should have GraphQL Storefront API depth, including custom resolvers for custom catalog attributes, B2B-aware queries for B2B stores, and proper authorization on customer-specific queries. The GraphQL developer guide on developer.adobe.com is the canonical reference.

Five elements. In or out. Same shape.

Data migration discipline has the same shape whether the work is into Magento (from BigCommerce, WooCommerce, custom platforms), between Magento versions (1 to 2, 2.3 to 2.4, Adobe Commerce upgrades), or out to another platform (Magento to Shopify Plus). Five elements appear in every clean migration; their absence in any quote is a red flag.

Element 1: written field-mapping document. A 15 to 40-page document covering every product attribute, customer attribute, order attribute, B2B catalog rule, and metafield equivalent on the source and destination platforms. Magento's EAV model stores product data flexibly with arbitrary custom attributes; mapping 40-plus custom attributes across thousands of products to a destination schema is real engineering work. A development company that quotes data migration without a written field-mapping document has not looked at your source data carefully. Our companion piece on best practices for ecommerce data migration covers the field-mapping methodology in detail.

Element 2: redirect map covering every URL with organic traffic. Typical Magento sites have 5,000 to 50,000 URLs requiring 301 redirects on a migration. Most quotes budget redirects for the top 100 ranking pages; that is a budget-protection mistake. Mid-market Magento stores frequently have 500 to 5,000 pages with organic traffic, and missing redirects on the long tail drops 20 to 40 percent of organic traffic in quarter one - which is worth more than the redirect work would have cost. A clean migration budgets the full URL inventory from a Google Search Console export plus a server-log analysis, mapped to the destination URL structure with a documented 301 chain. Our piece on Shopify 301 redirect best practices covers the methodology when the destination is Shopify.

Element 3: customer-password preservation strategy. Magento hashes customer passwords with Argon2id (since 2.4.0) or bcrypt (older installs). Shopify uses bcrypt with a different work factor. Direct password translation between platforms requires either a custom re-hash flow at first login, or the source platform's password hashes accepted by the destination via a custom authentication module. The fallback is forcing every customer to reset their password on first login post-migration - which costs 10 to 30 percent of returning customer revenue in the first month. A development company that has done migration work names the password-preservation strategy in the proposal.

Element 4: B2B catalog recreation strategy. If the source has B2B (company accounts, customer-segment-specific catalogs, NET payment terms, requisition lists, quote-to-cart functionality), all of it has to be recreated on the destination platform. The recreation work is substantial - mapping source company accounts to destination company accounts, recreating customer-segment catalog visibility rules, re-establishing NET payment terms with the destination payment gateway's credit-limit features, and rebuilding requisition list functionality. Shopify Plus's B2B module has caught up significantly in 2024 to 2026 but the catalog-rule mapping still requires explicit engineering. A development company that quotes a B2B Magento migration without a B2B catalog recreation plan has under-scoped the work.

Element 5: payment-gateway and tax-engine reconfiguration. The destination platform has a different payment-gateway integration surface and a different tax-engine integration surface than the source. Magento's integrations with Authorize.net, Braintree, Stripe, Adyen, PayPal, Klarna, and Afterpay each have to be re-established on the destination platform with correct credentials, currency configuration, fraud-detection rules, and refund flows. The tax engine (Avalara, TaxJar, Vertex) requires re-credentialed integration with the destination platform's API surface. PCI compliance posture transfers (both Magento and Shopify Plus are PCI Level 1) but the SAQ documentation has to be regenerated for the destination.

Honest mid-points on migration cost: the migration work alone runs $50,000 to $300,000 over 12 to 26 weeks depending on catalog size, B2B complexity, and the cleanliness of the source data. Our companion piece on Magento to Shopify migration cost walks through the line-item budget at small-store, mid-market, and enterprise tiers. A quote materially below the floor of those ranges usually indicates skipped work on one of the five elements above.

The honest question. Five signals each direction.

Every Magento merchant evaluating a development company in 2026 should also evaluate the underlying platform decision. Adobe Commerce license fees have risen 40 to 60 percent since 2022; Shopify Plus B2B caught up significantly in 2024 to 2026; Hyva Themes solves most of Magento's frontend performance ceiling. The honest answer is platform-dependent, not preference-dependent.

Stay on Magento when. Catalog complexity exceeds 10,000 SKUs with deep attribute sets, tiered pricing per customer group, and multi-warehouse inventory routing. B2B requirements include company accounts with internal approval workflows, NET-30 payment terms with credit limits, requisition lists, and per-customer-group catalog visibility. Multi-store architecture genuinely requires shared SKUs across regional storefronts with isolated catalog rules and per-region tax engines. ERP integration via Boomi, MuleSoft, or Celigo is already wired to NetSuite, SAP, or Microsoft Dynamics, and the cost of rebuilding the integration on Shopify Plus exceeds the maintenance cost on Magento. The brand is past $50M GMV with internal Magento engineering retained.

Migrate to Shopify Plus when. Adobe Commerce license fees have risen 40 to 60 percent since 2022 and the math no longer works against Shopify Plus's flat $2,500 per month. Your B2B needs fit Shopify's B2B module - the platform shipped company accounts, customer-specific catalogs, NET payment terms, and quote-to-cart in 2024 to 2026, closing most of the gap with Magento for $5M to $30M B2B brands. Hosting and developer retainers exceed $50,000 per year combined. The catalog is under 5,000 SKUs without exotic attribute requirements. The brand wants faster iteration speed and a larger app ecosystem - Shopify's 8,000-plus app store dwarfs Magento's commerce marketplace.

The honest stance from us. Digital Heroes does not actively build new Magento 2 stores in 2026. Our delivery focus is Shopify Plus - we ship migrations from Magento to Shopify Plus, custom Shopify Plus theme builds, headless Hydrogen storefronts on Shopify, and Shopify Plus B2B builds. The Magento engineering rubric in this article is universal - apply it to whichever development company you sign, whether they are a Magento specialist (Magebit, Vaimo, Born Group, Astound Commerce) or a hybrid Magento + Shopify partner (Forix, Rave Digital, ourselves). What we offer in the Magento conversation is the migration path - Magento to Shopify Plus migration with a 3-week refundable readiness audit that answers the stay-or-migrate question with numbers, not preferences. If the answer is stay, we hand you the engineering rubric and you sign a Magento specialist. If the answer is go, we ship the migration.

Reference clients on the Shopify side - Emani Cosmetics ($0 to $2M MRR over 18 months on Shopify Plus), Big Game Sports (B2B replatform), Noble Paris (multi-region Shopify Plus across France, UK, US). The full case studies walk through the engineering work in detail. The team page (Prasun Anand) covers the technical bench depth.

Eight signals. Walk away.

When the engineering proposal lands in your inbox, scan for these eight red flags. Any single one is grounds for a follow-up question; three or more is grounds to remove the company from the shortlist.

red flag 01

"We optimize performance" without numbers

Generic statements about "speed optimization" or "performance tuning" without named Varnish hit rates, Redis configuration, or LCP/INP/CLS field data on three named clients. Real performance work produces measurable numbers; their absence in the proposal signals their absence in the work.

red flag 02

No CVE response time named

A development company that says "we patch when needed" without naming a specific patch SLA (target inside two weeks of disclosure) and without describing their regression test suite is not running real security cadence. The last three Magento patches by date should be on the proposal.

red flag 03

Zero shipped Hyva work

A Magento development company in 2026 with no shipped Hyva client work is going to push you toward a Luma solution that hits a performance ceiling. Hyva is the dominant frontend modernization path in 2025 to 2026; its absence on the bench is a strong signal of stale capability.

red flag 04

ObjectManager in custom modules

Direct ObjectManager calls in the development company's existing module sample. The pattern is forbidden in production code per Adobe's coding standards; its presence signals junior engineering that has not absorbed Magento 2 dependency injection patterns.

red flag 05

No declarative schema in 2026

New modules still using legacy InstallSchema/UpgradeSchema PHP scripts in 2026. The pattern was deprecated by Magento 2.3 (2018); a development company shipping new modules with the legacy pattern is working from a 2017 mental model.

red flag 06

FTP deployments to production

A development company without GitHub branch protection, mandatory PR reviews, and CI/CD pipelines is shipping deployment fragility into your production. FTP, shared SSH access, and single-branch repos without code review are 2015 development patterns.

red flag 07

Migration quoted without field mapping

A migration quote (in or out) without a written field-mapping document, a redirect map covering every URL with organic traffic, a customer-password preservation strategy, a B2B catalog recreation plan, and a payment-gateway reconfiguration plan has under-scoped the work.

red flag 08

"We never recommend migration"

A development company that will not engage with the stay-or-migrate question - that defaults to "stay on Magento" regardless of the math - has a financial incentive to keep you on the platform. Hybrid Magento + Shopify partners are rare; pure Magento specialists with intellectual honesty about when migration beats staying are even rarer. Both are worth signing over a company that will not have the conversation.

Six honest answers.

What's the most important thing to check when choosing a Magento development company?

Architecture knowledge, evidenced in 30 seconds of conversation. A Magento development company that ships clean Magento 2 work answers four questions cleanly without rehearsal. One, what's your declarative schema strategy for module installs - do you use db_schema.xml with whitelist patches, or are you still writing legacy InstallSchema/UpgradeSchema PHP scripts? Two, where do you draw the ServiceContracts boundary - which interfaces sit in your Api/ namespace and which logic lives in Model/? Three, what's your GraphQL coverage if a headless storefront comes up next quarter - do you ship custom resolvers in your modules or stop at the storefront-default schema? Four, what's your indexer health strategy under heavy catalog load - full reindex schedule, async indexing pattern, the cache-warming approach for catalog_product_price and catalogsearch_fulltext indexers. A development company that answers those four cleanly has Magento 2 architecture knowledge that transfers to any work you give them. A company that pivots to certifications, awards, or feature lists when asked the four questions does not have it. Architecture is the load-bearing signal; everything else is downstream of it.

How do I evaluate a Magento development company's performance optimization track record?

Ask for documented Core Web Vitals figures on three named clients, with three numbers per client - LCP at the 75th percentile, INP at the 75th percentile, CLS at the 75th percentile. Real performance work produces measurable improvements that show up in Google Search Console's Core Web Vitals report and in CrUX data. A development company that has done the work can name the specific levers pulled - Varnish full-page cache hit rate, Redis configuration for session and cache backends, MySQL InnoDB buffer pool sizing, ElasticSearch index optimization, image format and width strategy via the catalog_product_image_pre filter, deferred JavaScript loading patterns. The honest mid-points: a Hyva-themed Magento 2 store should land LCP under 2.5 seconds at the 75th percentile on mobile within 90 days of focused performance work. A Luma-themed store with poor JavaScript discipline rarely gets there without a frontend rebuild. If a development company answers performance questions with generic statements about 'speed optimization' rather than specific Varnish hit rates, Redis backend configurations, and indexer health metrics, the optimization work has not actually shipped.

What security cadence should a Magento development company maintain?

Three measurable signals separate real security cadence from theatre. One, CVE response time - when Adobe ships a Magento security bulletin (the cadence is roughly quarterly with emergency patches in between), a competent development company applies the patch to staging within 72 hours, runs regression tests for 5 to 7 days, and pushes to production inside two weeks. Slower than three weeks is institutional risk; the average exploit-in-the-wild window after a Magento CVE disclosure is 14 to 30 days. Two, regression testing discipline - the company should describe which automated test suites cover their patch process. Magento's own functional test framework, the Magento Test Framework (MTF), plus Behat or Cypress integration tests on the storefront, plus PHPUnit on custom modules. Three, the GitHub repository hygiene - look for a private repo with branch protection on main, mandatory PR reviews, signed commits, and a documented release process. Public-facing modules should appear in a Magento Marketplace listing or on the company's GitHub with security policies. A development company that says 'we patch Magento when needed' without naming the patch cadence, the regression suite, or the release pipeline is not running real security work. The OWASP Top 10 for ecommerce, plus Adobe's published Magento Security Best Practices, are the baseline.

Does a Magento development company need headless capability?

Headless capability matters when one of three conditions is true. One, your Core Web Vitals on Luma cannot pass the 2.5-second LCP threshold even after a Varnish, Redis, and image-optimization sweep - at which point a Hyva Themes rebuild (Alpine.js + Tailwind CSS frontend, drops LCP from 4-6 seconds to 1.5-2.2 seconds) is the right answer for most stores. Two, the brand has committed to a progressive web app experience with offline support, instant page transitions, and an app-shell architecture - PWA Studio (React-based) is the framework, with the GraphQL Storefront API as the data layer. Three, the catalog architecture genuinely needs a separate frontend codebase for content-driven editorial layers (an editorial homepage that reads from a headless CMS plus a Magento product layer). For most $5M to $30M Magento merchants, Hyva Themes is the right level of headless. A development company that does not have shipped Hyva work in the last 18 months is going to push you toward a Luma solution that hits a performance ceiling. A company without PWA Studio depth will not be the right partner for a full progressive web app build. Ask for a count of named Hyva clients and PWA Studio clients shipped in the last 24 months.

How does a Magento development company handle data migration?

Data migration discipline has the same shape whether you are migrating into Magento, between Magento versions, or out to another platform. Five elements signal real migration work. One, a written field-mapping document covering every product attribute, customer attribute, order attribute, B2B catalog rule, and metafield equivalent - typically 15 to 40 pages for a mid-market migration. Two, a redirect map covering every URL with organic traffic - typical Magento sites have 5,000 to 50,000 URLs requiring 301s. Three, a customer-password preservation strategy - Magento's Argon2 hashing translates to Shopify's bcrypt with a documented re-hash flow, or to a 'force-reset on first login' fallback if the source data does not allow direct translation. Four, a B2B-catalog recreation strategy if the source has B2B - company accounts, customer-segment-specific catalogs, NET payment terms, requisition lists, and quote-to-cart functionality have to be recreated on the destination platform. Five, a payment-gateway and tax-engine reconfiguration plan covering the destination platform's compliance posture. A development company that quotes data migration as a single low number without naming these five elements has not looked at your source data carefully. The migration cost on a typical $10M Magento store is $50,000 to $300,000 over 12 to 26 weeks; a quote materially below that range usually indicates skipped work.

Should I stay on Magento or migrate to Shopify Plus?

Stay on Magento when the catalog complexity exceeds 10,000 SKUs with deep attribute sets and tiered pricing per customer group, B2B requirements include company accounts with internal approval workflows and NET-30 payment terms with credit limits and per-customer-group catalog visibility, multi-store architecture genuinely requires shared SKUs across regional storefronts with isolated catalog rules and per-region tax engines, ERP integration via Boomi or MuleSoft is already wired to NetSuite or SAP and the rebuild cost on Shopify Plus exceeds the maintenance cost on Magento, or the brand is past $50M GMV with internal Magento engineering retained. Migrate to Shopify Plus when Adobe Commerce license fees have risen 40 to 60 percent since 2022 and the math no longer works against Shopify Plus's flat $2,500 per month, your B2B needs fit Shopify's B2B module (which has caught up significantly in 2024 to 2026 for $5M to $30M B2B brands), hosting and developer retainers exceed $50,000 per year combined, the catalog is under 5,000 SKUs without exotic attribute requirements, or the brand wants faster iteration speed and a larger app ecosystem. Migration cost is $50,000 to $300,000 over 12 to 26 weeks. Digital Heroes runs a 3-week refundable readiness audit to answer the question with numbers - we help merchants migrate from Magento to Shopify Plus, but the engineering rubric in this article is universal whether the answer is stay or go.

Three-week readiness audit. Engineering rubric included.

If your shortlist is set and you want a second opinion on the engineering proposal, we run a 3-week readiness audit covering architecture review, performance baseline, security cadence audit, headless fit-check, data migration scoping, and the honest stay-or-migrate TCO math. Refundable against any subsequent migration engagement. We help merchants migrate from Magento to Shopify Plus when migration is the answer; we hand you the engineering rubric when staying is the answer. Either way, the audit ships in 3 weeks. New York and Delhi headquartered, 2,000-plus stores shipped since 2017, Trustpilot 4.9 across 70-plus reviews, DUNS 650878346, UN Global Marketplace Tier 1.

Published · Last updated .