Dropshipping Cost Calculator: The Lines Most Spreadsheets Miss

The bottom line per month

A dropshipping cost calculator is not a comparison of monthly software plans. It is one subtraction, run per order: sell price, less supplier cost, less outbound shipping, less import duty, less payment processing, less platform or marketplace fees, less amortized refunds and chargebacks, less ad cost. Exactly one of those lines can be quoted to the cent before the order exists, and it is the software bill. Every other line moves with each order, and they do not drift symmetrically. They drift against you. I have watched a store model a 34% margin and settle at 19% over a quarter with no single line in the spreadsheet obviously wrong. Each one was a little optimistic, and they compounded into the gap between a business that looks profitable in a spreadsheet and one that is flat in the bank account.

On the fixed side, as of 2026 Shopify lists Basic at $25/mo, Grow at $65/mo and Advanced at $399/mo on monthly billing, dropping to $19, $49 and $299 per month on annual billing. Displayed prices vary by country and by whatever promotion is running, so open the pricing page in your own currency before you put a number in the model. Then count the apps honestly. A review widget, a bundle builder, a branded tracking page and a supplier connector is four subscriptions, and the connector is the one that hurts, because it usually prices by order volume instead of sitting flat. A solo store that has stopped installing things lands somewhere between $60 and $200 a month in fixed software. A store that has not stopped installing things does not know what it pays, which is its own kind of answer.

Now put that in proportion. A store doing 300 orders a month at a $40 average order value is turning over $12,000. At $120 of software, fixed cost is 1% of revenue. Card processing on that same volume is roughly 3.6%. If you spend your planning time choosing between two apps and no time on the processing and duty lines, you are optimizing the smallest term in the equation.

How the invoice breaks down

These are the rates I could confirm on the provider primary pages in 2026. Anything you cannot confirm at the source stays out of your model, and that includes this table once enough months have passed that you ought to be re-checking it yourself.

Line Rate (2026)
Shopify subscription Basic $25 / Grow $65 / Advanced $399 monthly; $19 / $49 / $299 on annual billing
Shopify third-party gateway surcharge 2% Basic, 1% Grow, 0.6% Advanced, 0.2% Plus — charged only if you do not use Shopify Payments
Stripe card payment 2.9% + 30 cents domestic; add 1.5% for international cards; add 1% if currency conversion is needed
Stripe dispute $15 per dispute received, refunded if you win
PayPal Checkout 3.49% + 49 cents domestic; add 1.5% on international commercial transactions
PayPal chargeback $20, applied whether or not the case goes your way
Amazon referral fee Most categories 8-15%, minimum 30 cents per unit — confirm the exact rate in the Seller Central fee preview for your own ASIN
Import duty on an $800-or-under parcel Ad valorem, at the rate tied to the country of origin — the flat-rate postal option ended after 28 February 2026

Run one order through it. A $39.99 sale paid by domestic card on Stripe gives up $1.46 in processing, which is 3.65%, not 2.9%; at this order size the flat 30 cents is doing most of the damage. If you are on Shopify Basic with an outside gateway, add 2%, another 80 cents. Supplier item plus shipping at $11.50 leaves you around $26.20 before duty, before ads, before the two orders in a hundred that get refunded. Price that last clause properly, because almost nobody does. At 300 orders a month, a 2% refund rate is six orders, and each one takes the goods, the processing fee Stripe keeps, and usually the outbound shipping with it. Call it $80 a month at a $40 average order value: more than three Shopify Basic subscriptions, appearing on no invoice you will ever receive.

What discounts actually apply

Annual billing is the only published discount worth naming: $19 against $25 on Basic, $49 against $65 on Grow, $299 against $399 on Advanced — about 24-25% off in each case. The catch is that you are prepaying twelve months on a product-market fit you may not have. I do not buy annual until a store has held steady order flow for 90 days.

The bigger saving is structural, not promotional. Using Shopify Payments removes the third-party gateway surcharge outright. On $12,000 a month on Basic, that 2% surcharge is $240 — nearly ten times the subscription itself. Before you bank it, check the two conditions that decide the question for you: Shopify Payments is not available in every country, and it does not underwrite every product category. Sell supplements, vape hardware or anything carrying a health claim on the label and you may be sitting on an outside gateway regardless of preference, in which case that 2% is a permanent feature of the model rather than a mistake you can fix.

Below that, discounts exist but are not published. Processors quote custom or interchange-plus pricing above certain monthly volumes; you get it by asking, not by qualifying automatically. Suppliers tier by unit count; ask for pricing at 50, 200 and 500 units a month, and ask whether the break applies to cumulative monthly volume or to a single purchase order, because those are very different businesses to run.

One thing never discounts: the fixed per-transaction cents. Thirty cents on a $9 order is 3.3% stacked on top of the percentage rate. The same $9 order on PayPal gives up 49 cents plus 3.49%, which is 8.9% before you have paid for the product at all. Sub-$15 average order values are structurally hostile to card processing, and no plan upgrade fixes that. Raise the AOV or bundle.

When it costs more than quoted

The single biggest change to landed cost is customs. The executive order signed on 30 July 2025 suspended duty-free de minimis treatment for shipments valued at $800 or less from all countries, effective 12:01 a.m. Eastern on 29 August 2025. International postal shipments got a temporary flat-rate option of $80, $160 or $200 per item depending on the tariff tier of the origin country, available for six months. That window closed, and from 28 February 2026 postal shipments must use the ad valorem method. Shipments arriving by any mode other than the postal network face an indefinite suspension and must go through formal or informal entry procedures. In practice: a supplier quoting shipping included is no longer quoting your landed cost.

Here is the part you only learn by shipping. Suppliers under-declare parcel value by default, without telling you, because it has always made their numbers look better. Under ad valorem duty that creates two problems at once. Your model shows a duty figure based on real cost while the invoice charges on a lower declared value, so your forecast drifts. And when a parcel gets flagged, you pay broker and re-declaration fees that dwarf the duty you avoided, on a timeline that blows the delivery promise: the last time I watched it happen the paperwork ran eleven days, and the customer had already filed a dispute before the parcel cleared. Fix it once by putting the declared value policy in writing with the supplier, per SKU, before you scale the SKU.

Refunds are the other asymmetry. Stripe documentation states plainly that processing fees from the original transaction are not returned when you refund. A refunded $39.99 order costs you $1.46 plus the goods plus the return leg. But refunds issued shortly after the charge can process as a reversal instead, and Stripe does not withhold fees on reversals. Better still, if you use manual authorization and capture, cancelling before capture costs nothing. If most of your cancellations arrive within the first day, holding new orders uncaptured for that window is free money you are otherwise handing to the processor.

Also budget for what nobody quotes you. A new merchant account in a category the risk team dislikes can carry a rolling reserve, typically a percentage of daily volume held back for 90 to 180 days before release, which is a cash-flow problem rather than a cost line and lands precisely when you are trying to fund inventory. Then there is the 1% currency conversion when your supplier bills in one currency and your customers pay in another. Then the return leg on a cross-border parcel, which often costs more than the item and is usually written off rather than shipped back; set that write-off threshold now, as a dollar figure, instead of deciding case by case at eleven at night.

Check these before you sign

Four conversations, with the specific questions worth asking:

  • Your supplier account manager (the named contact at CJ, Zendrop, or your sourcing agent — not the chat widget). Ask in writing, per SKU: the HS code, the country of origin, the declared value policy, who is importer of record, and whether the quote is DDP or DDU. If DDP, ask what happens to your price if duty rates change mid-contract.
  • A licensed customs broker. Ask which entry type now applies to your parcels, the per-entry fee, the merchandise processing fee, and whether consolidating into one weekly shipment lowers your per-order duty and clearance cost versus parcel-by-parcel. Get the fee schedule as a document; the number quoted on a first call tends to leave out the per-entry charge.
  • Your processor sales team, via the contact sales link on Stripe or PayPal pricing pages. Ask: what monthly volume qualifies for custom or interchange-plus pricing, whether a rolling reserve applies to your merchant category, at what percentage and hold period, and what dispute rate triggers account review.
  • Platform support, before you commit to annual billing. Confirm the exact plan price and card rate for your region and currency in writing.

Then hold yourself to one rule when building the model: no figure goes in unless you have seen it on the provider primary page within the last 90 days. Duty rules and processor terms both moved in the last twelve months. A calculator built on last year’s numbers is not conservative, it is just wrong.

Scroll to Top