← All posts E-Commerce Strategy 19 min read

B2B E-Commerce Grew 13% in 2025. Total B2B Sales Grew 0.4%.

US B2B e-commerce grew 13% in 2025 to $2.93 trillion while the manufacturing and distribution economy underneath it grew 0.4%. The growth is channel migration, not new demand — and that changes what has to be integrated first: the five questions a self-service portal must ask your ERP, and what breaks when the answers are…

Bar chart comparing 2025 US growth: total B2B sales 0.4%, retail e-commerce 5.4%, B2B e-commerce 13%
Quick Summary

B2B E-Commerce Grew 13% in 2025. Total B2B Sales Grew 0.4%.

  • The growth is migration, not demand. US B2B e-commerce reached $2.93 trillion in 2025, up 13%, while the $15.12 trillion manufacturing and wholesale distribution economy underneath it grew 0.4% (Digital Commerce 360). Almost none of that 13% is new spending. It is existing orders changing channel.
  • “3x faster than B2C” does not survive a same-source check. Against US retail e-commerce at +5.4% in 2025, B2B e-commerce grew about 2.4x faster — real, but smaller than the number that circulates.
  • The comparison only holds when both sides come from one firm, one year, one geography. Published 2025 estimates of the global B2B market range from roughly $24 trillion to $32 trillion depending on who counted, because “B2B e-commerce” has no shared definition.
  • 67% of B2B buyers prefer a rep-free buying experience (Gartner, 2026), but Gartner’s same survey found confident buyers are twice as likely to report a high-quality deal. Removing the rep is the easy half; replacing what the rep supplied is the project.
  • The platform floor moved on 2 April 2026: Shopify extended native B2B to Basic, Grow and Advanced after nearly four years of Plus-only access. The constraint is no longer licensing. It is whether your ERP can answer five questions fast enough.
13%
US B2B e-commerce growth in 2025, to $2.93 trillion (Digital Commerce 360)
0.4%
Growth in total US manufacturing and wholesale distribution sales the same year, same source
2.4x
How much faster B2B e-commerce grew than US retail e-commerce at +5.4% — not the 3x commonly quoted
67%
B2B buyers who prefer a rep-free buying experience (Gartner, 2026, ~650 buyers)

Put the two numbers side by side and the usual story collapses. US B2B e-commerce grew 13% in 2025. The manufacturing and wholesale distribution economy it sits inside grew 0.4%. A channel cannot outgrow its market by a factor of thirty on new demand, because there was no new demand. What happened is that orders which used to arrive by phone, fax, emailed PDF and field visit arrived through a portal instead. That distinction is not pedantry: if you read the 13% as market growth you will build a storefront to capture new buyers, and if you read it correctly as channel migration you will build an integration to serve the buyers you already have. This post walks the real 2025 figures, explains why every published market size disagrees with every other one, and specifies the five things a self-service portal has to be able to ask your ERP before any of it works.

On this page

The three numbers that actually define 2025

Most B2B growth claims fail because they compare a figure from one research firm against a figure from another, measured over different years in different geographies with different definitions. The comparison below deliberately does not do that. All three rows come from Digital Commerce 360, all cover the 2025 US calendar year, and all use that firm’s own definitions consistently.

2025, United States Value Year-on-year growth
Total manufacturing and wholesale distribution sales $15.12 trillion 0.4%
B2B e-commerce $2.93 trillion 13%
Retail (B2C) e-commerce $1.234 trillion 5.4%

Three readings follow. B2B e-commerce is roughly 2.4 times the size of retail e-commerce in the US, not five times — the 5x ratio comes from global figures, where B2B includes wholesale trade flows that have no retail analogue. B2B e-commerce grew about 2.4 times faster than retail e-commerce, which is the defensible version of the “3x faster” claim. And B2B e-commerce now represents roughly 19% of that $15.12 trillion, meaning four out of five B2B dollars still move through a channel that is not a website.

The third reading is the one worth sitting with. The headline growth rate is impressive precisely because the base is small and the migration has a long way left to run.

A two-speed economy, drawn to scale

The gap between 0.4% and 13% is difficult to hold in your head as text, because both numbers are small and the ratio between them is not. Drawn on a common axis it stops being abstract.

US growth rates, 2025 — one source, one year, one geography

2025 US year-on-year growth: total B2B sales 0.4 percent, retail e-commerce 5.4 percent, B2B e-commerce 13 percent Three horizontal bars on a shared zero-to-fourteen-percent scale. Total US manufacturing and wholesale distribution sales grew 0.4 percent in 2025, a bar barely wider than the axis line. US retail e-commerce grew 5.4 percent. US B2B e-commerce grew 13 percent, the longest bar. Because the market underneath grew only 0.4 percent, the 13 percent represents orders changing channel rather than new spending. Year-on-year growth, United States, 2025 Source: Digital Commerce 360. Same firm, same year, same geography. 0% 5% 10% Total B2B sales $15.12T 0.4% Retail (B2C) e-commerce $1.234T 5.4% B2B e-commerce $2.93T 13%

The top bar is the whole market. The bottom bar is one channel inside it. When the channel grows thirty times faster than the thing containing it, the only arithmetic that works is substitution: every incremental dollar of portal revenue is a dollar that previously entered through a rep, a phone line, an email inbox or an EDI feed. Nothing was created. Something was rerouted.

Why the framing decides the budget

A growth story justifies acquisition spend — traffic, campaigns, new-logo pipeline. A migration story justifies integration spend — pricing, credit, stock and invoice data reaching the portal accurately. Merchants who misread the first as the second buy demand generation for buyers they already have, and then conclude the portal did not work.

Why every B2B market figure you read disagrees

Search for the size of the global B2B e-commerce market and you will get roughly $24 trillion, roughly $30 trillion and roughly $32 trillion for the same year, 2025, from reputable firms. This is not sloppiness. It is three different questions being answered under one label, and knowing which is which is the difference between a business case and a slide.

The variables are the definition of a transaction, the treatment of EDI, and the inclusion of marketplaces. Digital Commerce 360 notes that more than 90% of B2B transactions are now electronic — a category that includes EDI, procurement-system integrations and other machine-to-machine channels that have existed for decades. E-commerce, meaning a buyer using a self-service interface, is a much smaller subset. eMarketer measures narrower still: B2B e-commerce site sales, which reached $2.297 trillion in 2024 at 10.5% growth and are forecast to average 7.8% annually through 2028 to $3.027 trillion.

Those two forecasts look contradictory and are not. eMarketer projects site sales reaching 27.5% of electronic sales and 14.3% of total B2B product sales by 2028, up from 23.7% and 12.0% in 2024. A narrower definition produces a smaller number and a slower growth rate, because it excludes the marketplace and portal categories that are migrating fastest.

Practical rule: never mix sources inside one comparison, and when a figure is quoted at you, ask whether EDI is inside it. A 90%-electronic statistic and a 19%-e-commerce statistic can both be true of the same company on the same day, and only one of them tells you whether a buyer can log in and see their price.

Where the migrating orders come from

If the 13% is substitution, the useful question is what it is substituting for — because each origin channel hands the portal a different unsolved problem. An order arriving by phone was priced by a person who could see the account. An order arriving by EDI was priced by a contract already loaded into a system. A buyer logging into a portal has neither unless you supply it.

What the portal has to replace, per origin channel

Legacy B2B order intake channels migrating to a self-service portal, and the judgement each one supplied Four legacy intake channels on the left — field sales rep, phone and fax, emailed purchase order, and EDI feed — all feed into a central self-service portal box. Each carries a label naming the judgement that channel supplied and the portal must now replace: account-specific pricing, stock and lead-time answers, hand-keyed order entry, and a pre-negotiated contract. The portal in turn reads from the ERP, which is the system of record for price, credit, stock, invoices and order status. The 13% is these four channels, rerouted LEGACY INTAKE Field sales rep supplied: the account’s real price Phone and fax supplied: stock and lead-time answers Emailed PO supplied: a human doing order entry EDI feed supplied: a contract loaded in advance Self-service portal must now answer all four ERP system of record contract price credit limit + balance available-to-sell open invoices order + shipment status Every judgement the left column used to supply becomes a query against the right column, on a deadline set by page load.

Read left to right, the diagram is a specification. Each legacy channel embedded a piece of judgement in a person or a pre-negotiated contract. The portal removes the person without removing the judgement, so the judgement has to come from the system of record, in real time, correctly, at page-render latency. That is the entire engineering problem, and it is why B2B portals fail far more often on data than on design.

The five questions a portal must ask your ERP

Strip away the storefront and a B2B portal is five queries against the system of record, each with its own freshness requirement. Getting the freshness wrong is the most common cause of a portal that technically works and is commercially useless.

Question Required freshness Failure mode if stale
What is this account’s price for this item? At page render Buyer sees list price, assumes their contract lapsed, calls the rep. The portal has now added a step.
How much credit is left on this account? At checkout, synchronous Order accepted past the limit, then held by finance. Buyer learns days later.
How many units can I actually promise? At order accept, synchronous Oversell. Two channels reserve the same unit and neither is wrong when it accepts.
What is open on this account right now? On demand Buyer pays an invoice already settled, or disputes one already credited.
Where is the order I placed? On demand, event-driven preferred Status calls to the team the portal was meant to relieve.

Only the first three genuinely need synchronous reads, and that distinction is worth defending, because it decides your integration architecture and your ERP API budget. Price, credit and available-to-sell are decision data — a wrong answer changes what the buyer does. Invoices and shipment status are reporting data, and can be replicated on a schedule or driven by events without commercial consequence. We work through that split in detail in the real-time versus scheduled sync decision framework, and the mechanics of the event path in webhooks versus polling for inventory sync.

The synchronous three also set a hard constraint most projects discover late: your ERP has to serve those reads at storefront traffic volumes without tripping governance limits. NetSuite in particular rewards choosing the right interface up front, which is the subject of REST API versus SuiteScript RESTlet, and planning for throughput ceilings, covered in API rate limiting at production volume. A portal that reads price live from the ERP on every product view will find the ceiling on its first busy Monday.

Credit and net terms: the contract that breaks first

Consumer checkout resolves payment at the moment of purchase. B2B checkout frequently does not, and that single difference invalidates most of the assumptions baked into a standard e-commerce stack. A Net 30 order is an extension of credit, so the checkout has to evaluate a credit decision — limit, current balance, overdue items, holds — before it can accept the order at all.

Three details decide whether this works. The credit check must be synchronous with order acceptance, because an asynchronous check produces accepted orders that finance later reverses, which is worse for the relationship than a rep saying no on the phone. The available credit calculation must include orders placed but not yet invoiced, or a buyer can place three orders in an afternoon that individually clear the limit and collectively breach it. And the portal needs a defined behaviour for the declined case that is not a generic error — a held order with a named contact keeps the sale alive where a red banner ends it.

Payment against invoices is the natural companion feature and the one buyers ask for most. NetSuite’s SuiteCommerce handles this natively: business accounts carry their own negotiated prices, terms and credit limits, and the account area lets buyers review balances, deposits and credit memos and make full or partial payments against single or multiple invoices. Because the storefront runs on the same database as the ERP, there is no sync layer to go stale between the two — which is a genuine architectural advantage, and the reason the platform question and the integration question are not separable.

Rep-free is the demand. Confidence is the requirement.

The demographic argument for self-service is well evidenced. LinkedIn’s 2025 B2B Buyer Report found 73% of B2B buyers are millennials, and 44% of final purchasing decision-makers. Gartner’s 2026 survey of nearly 650 B2B buyers found 67% prefer a rep-free buying experience, and 45% used AI during a recent purchase.

The second half of Gartner’s finding is the half that gets dropped, and it is the one that should shape the build: confident buyers are twice as likely to report a high-quality deal compared with buyers who have low decision confidence. Preference for rep-free and outcome from rep-free are different measurements. Buyers want the rep gone; they still need what the rep provided.

This has direct design consequences. A B2B portal is not a B2C storefront with a login — it is a decision-support surface. Concretely: show the buyer their contract price next to list price so the discount is legible rather than assumed; show real available-to-promise dates rather than a generic in-stock badge; surface previous order history at the point of reordering so the buyer can verify they are repeating the right specification; and make the credit position visible before checkout rather than at it. Each of these substitutes for a question a rep used to answer, and each one raises decision confidence — which is the variable Gartner ties to deal quality.

The teams that win here stop treating the portal as a cost-reduction project. Removing rep touches is the saving; raising buyer confidence is the return. A portal that only does the first produces cheaper orders and worse ones.

Platform reality check, August 2026

The licensing constraint that shaped B2B platform decisions for four years disappeared this year. On 2 April 2026 Shopify extended native B2B to Basic, Grow and Advanced plans, ending a Plus-only arrangement that had run since the feature launched in the Summer ’22 edition.

Capability Shopify (Basic / Grow / Advanced) Shopify Plus NetSuite SuiteCommerce WooCommerce
Company profiles / buyer accounts Native since Apr 2026 Native Native Extension or custom
Account-specific price lists Up to 3 catalogues Unlimited Native, from ERP records Extension or custom
Volume discounts, quantity rules Native Native Native Extension or custom
Net payment terms Native Native Native, with credit limits Extension or custom
Direct catalogue assignment to companies and locations Plus only Native Native Custom
Deposits and partial payments Plus only Native Native, against invoices Custom
Live ERP data without a sync layer Integration required Integration required Same database as ERP Integration required

Read the last row before the others. Every platform except SuiteCommerce requires an integration to answer the five questions above, which means the platform choice determines the storefront features and the integration determines whether they are correct. Shopify’s expansion of native B2B is genuinely significant for smaller wholesalers — it removes a licensing cliff — but a company profile with the wrong price on it is worse than no portal. The architecture for connecting the two is covered in Shopify B2B and NetSuite integration architecture for wholesale, and the same pattern on the WooCommerce side in building a B2B WooCommerce customer portal on NetSuite.

WooCommerce deserves an honest note rather than a dismissal. It has no native B2B layer, so company accounts, tiered pricing and terms come from extensions or custom code. That is a real cost, and it buys real control — the pricing resolution logic is yours, which matters when contract pricing has rules a catalogue model cannot express. It is also worth reading alongside the broader pattern of platforms absorbing operational functions, which we covered in Shopify quietly becoming an ERP.

A migration sequence that survives contact with buyers

Channel migration fails in a specific and predictable way: the portal launches, the largest accounts try it, one of them sees a wrong price, and they go back to the rep permanently. Recovering a migrated account is much harder than migrating it, so sequence matters more than speed.

  • Pick the system of record for each of the five data contracts, in writing. One authoritative writer per contract. Ambiguity here surfaces later as two systems disagreeing about a credit limit during a checkout.
  • Prove price resolution against real accounts before building any UI. Take your twenty most complex contracts and resolve them through the integration path. Contract pricing is where catalogue models break, and finding that out during a pilot is far cheaper than finding it out with buyers.
  • Make available-to-sell synchronous at order accept before opening the portal to more than one channel, or accept a known oversell window as a documented business decision. If orders route across warehouses, settle that logic first — see multi-warehouse order routing.
  • Settle tax and currency before the first international buyer, not after. Both are cheap to design in and expensive to retrofit: tax compliance for WooCommerce and the three multi-currency problems.
  • Pilot with accounts that already order predictably — repeat buyers on stable SKUs. They validate the mechanics without exercising every pricing edge case at once.
  • Instrument before launch. Order origin, price-resolution failures, credit declines and ATP mismatches all need to be visible on day one. What to watch and what to ignore is set out in observability for NetSuite integrations.
  • Keep the rep in the loop on migrated accounts for one full order cycle. The rep catches the first wrong price before the buyer concludes the portal is unreliable.

The pre-launch verification items overlap heavily with our WooCommerce and NetSuite integration checklist, which is worth running end to end regardless of platform.

Measure channel shift, not GMV

If the growth is migration, portal GMV is a vanity number — it can rise purely because a rep stopped taking phone orders, with no commercial change whatsoever. Four measurements actually tell you whether the project worked.

Share of orders by origin channel, per account. This is the migration rate, and it is the only metric that distinguishes new behaviour from rerouted behaviour. Track it per account, because the aggregate hides the case that matters: a few large accounts migrating while everyone else stalls.

Rep touches per order on migrated accounts. If this does not fall, the portal is not answering the five questions and buyers are calling to fill the gaps. A rising number after launch usually points at price resolution.

Order value and line count, before versus after migration, same account. Self-service reordering typically changes basket composition. Whether it changes it favourably is an empirical question about your catalogue, not a given.

Price-resolution failure rate. Every instance where the portal showed list price to a contract account is a near-miss on losing that account back to the phone. This should be alerted on, not reported monthly.

Where this goes wrong

Three failure patterns account for most of the disappointment in this category, and all three trace back to reading the 13% as growth rather than migration.

The first is building for acquisition: a public catalogue, SEO investment and campaign spend aimed at buyers who do not exist, while the existing accounts that were going to migrate get a portal with stale pricing. The 0.4% figure is the argument against this, and it is decisive.

The second is treating the portal as a B2C storefront with a login. Consumer checkout patterns assume payment resolves at purchase, one price per SKU, and a buyer choosing for themselves. B2B breaks all three, and every one of those assumptions is buried somewhere in a standard theme or checkout extension.

The third is deferring the credit and terms work to phase two. It is the least visually rewarding part of the build and the part that decides whether large accounts can transact at all. A portal that cannot process Net 30 has not migrated anything — it has added a browsing surface for buyers who will still place their orders by email.

The honest summary is that the platform layer is largely solved in 2026 and the data layer is not. If you want the five data contracts specified against your actual ERP and platform before committing to a build, our integration services cover exactly that scoping work, and the surrounding architecture sits in the NetSuite and WooCommerce integration guide.

Get the working checklists

The runbooks and decision checklists from these guides, as printable PDFs — free in the SoftXone guide library.

Browse the guide library →

Sources & Further Reading

References

  1. U.S. B2B sales top $15 trillion, ecommerce redefines how companies buyDigital Commerce 360 — the $15.12 trillion 2025 total and the 0.4% growth rate, plus the “two-speed B2B economy” framing used throughout this post.
  2. B2B Ecommerce Market Forecast ReportDigital Commerce 360 — US B2B e-commerce at $2.93 trillion and 13% growth in 2025, and the 90%+ electronic-transactions figure used in the definitions section.
  3. 2025 U.S. ecommerce sales mark fourth straight year of single-digit growthDigital Commerce 360 analysis of Department of Commerce data — US retail e-commerce at $1.234 trillion, up 5.4%, and 23.1% of total retail. The B2C side of the same-source comparison.
  4. B2B ecommerce site sales will gain ground over the next four yearseMarketer — the narrower “site sales” definition: $2.297 trillion in 2024 at 10.5% growth, 7.8% average through 2028, and the share-of-electronic-sales projections.
  5. Gartner: 67% of B2B Buyers Prefer a Rep-Free ExperienceDemand Gen Report on Gartner’s 2026 survey of nearly 650 B2B buyers — the rep-free preference, 45% AI usage, and the decision-confidence finding.
  6. Why millennials continue to reshape B2B ecommerceDigital Commerce 360 — carries the LinkedIn 2025 B2B Buyer Report figures: 73% of B2B buyers and 44% of final decision-makers are millennials.
  7. B2B for allShopify — the 2 April 2026 announcement extending native B2B to Basic, Grow and Advanced, and the list of capabilities that remain Plus-only.
  8. Shopify Editions — Summer ’22Shopify — the original B2B launch, establishing the four-year Plus-only period that ended in April 2026.
  9. SuiteCommerce B2BNetSuite — native B2B capabilities: account-specific pricing, terms and credit limits, and invoice payment from the customer account area.

Frequently asked questions

Is B2B e-commerce really growing three times faster than B2C?

Not on a like-for-like basis. Using Digital Commerce 360 figures for the US in 2025, B2B e-commerce grew 13% and retail e-commerce grew 5.4% — a ratio of about 2.4. The 3x figure usually appears when a B2B growth rate from one research firm is set against a B2C rate from another, over different years or geographies. Check that both halves of a growth comparison come from the same source before putting it in a business case.

If total B2B sales grew only 0.4%, where is the 13% coming from?

Substitution. Orders that previously arrived by phone, fax, emailed purchase order or field visit are arriving through a portal instead. That is why a portal business case should rest on cost-to-serve and retention of existing accounts rather than on new-customer acquisition — the buyers are already yours, and what changes is the channel they use to reach you.

Do I still need Shopify Plus to sell B2B on Shopify?

Not since 2 April 2026. Basic, Grow and Advanced plans now include company profiles, up to three catalogues, volume discounts, quantity rules, vaulted credit cards and payment terms. Plus remains necessary for unlimited catalogues, direct catalogue assignment to companies and locations, deposits and partial payments. If you need more than three distinct price lists, that is the line to watch.

Which portal data has to be live, and which can be synced on a schedule?

Contract price, credit position and available-to-sell are decision data — a stale answer changes what the buyer does — so they should be read synchronously at render, checkout and order accept respectively. Open invoices and shipment status are reporting data and can be replicated on a schedule or driven by events. Treating all five as real-time is the quickest route to your ERP’s governance limits for no commercial gain.

What most often loses a migrated account back to the sales rep?

A wrong price shown to a contract account. The buyer sees list pricing, concludes their negotiated terms are not being honoured, and calls the rep — who then keeps the account. Recovering a migrated account is materially harder than migrating it, so instrument price-resolution failures as an alert rather than a monthly report.

Related guides

Discussion

Leave a Reply

Your email address will not be published. Required fields are marked *


Ship it

Need this in your stack?

We build, integrate, and ship — no calls, just delivery.

Start a project →