Merchgain
EN
Available now
Next, in this order
  • FrançaisFR
  • ItalianoIT
  • PortuguêsPT
  • NederlandsNL

A language shows up here once its pages are actually written. Nothing on this site is machine-translated, except the German and Spanish pages, which no native speaker has reviewed yet.

Install freeInstall
Profit and margin report · WooCommerce

WooCommerce tells you what you sold. Merchgain tells you what you earned.

Which products make money, and which just move stock. Which category carries the store. What margin is left after discounts. Merchgain works out gross profit and margin from the cost WooCommerce records on every order: for every product, category and period. Free, in your own admin, with no changes to your store.

  • Read-only: never changes your store
  • No account, no cloud, no telemetry
  • Just starting to enter costs? Older orders get an estimate
Sample data from a demo store: the same figures as screenshots 1 and 2 on the WordPress.org listing. The full sample report →
Price, discount, ads

Three decisions that start with your margin. WooCommerce doesn't show it.

Since version 10.3 (October 2025), WooCommerce records the cost of goods on every order. None of its reports reads that cost: the WooCommerce documentation says plainly that Analytics doesn't include it. Why the cost doesn't show up in Analytics →

Price

Add 30% to the cost and your margin comes out at 23%.

Markup is a share of the cost, margin a share of the price. With a cost of $100 and a price of $130, the $30 left is 23.1% of the price.

Merchgain shows the margin, profit divided by revenue, for every product. No install needed: the margin vs markup calculator →

Discount

At a 30% margin, 20% off means selling three times as many to earn the same.

You set a discount as a share of the price, but you pay all of it out of your profit: on a $100 product, $30 of profit becomes $10.

Merchgain gives you the margin of every product and category, not a store average. That margin decides which discount pays off. No install needed: the discount margin calculator →

Ads

A ROAS of 3 at a 25% margin is a loss.

$100 in ads brings $300 in sales, which leave $75 of profit. Break-even ROAS is 1 divided by your margin: at 25%, that is 4.

With a product's or a category's margin from Merchgain, you can set the threshold for each campaign. No install needed: break-even ROAS, with a calculator and a video →

What the report screen shows

One screen, three answers. None of them is in a sales report.

Merchgain works from the cost recorded on every item sold. Where a cost is missing, it says so and keeps any estimate separate.

What makes money

Gross profit and margin for any period: for the whole store, every product and every category.

  • Gross profit, revenue, cost of goods and margin for the range you pick
  • A product table you can sort by profit and by margin
  • A category view: which part of the store pays for the rest
  • Products sold at a loss rise to the top when you sort
  • CSV export of every view, in the free version

What the report doesn't know

Missing data is never counted as a cost of zero. The report tells you how much of your revenue is based on real costs.

  • A coverage line: the share of revenue with a cost recorded
  • Products with no cost, listed by name with a link to edit them
  • Cost of zero and no cost: a warning that WooCommerce stores both the same way
  • Orders in another currency: listed and left out, never added up
  • Costs kept by another plugin (such as ATUM): detected and named

Before you recorded costs

WooCommerce never writes a cost back to old orders. Orders from before you entered costs get an estimate.

  • An estimate from today's product cost times the quantity sold
  • Its own panel, with ≈ beside every estimated figure
  • Never added to the recorded figures
  • “Estimated profit” and “Estimated margin” columns in the tables and the CSV

Gross profit is net revenue after discounts minus the cost of goods. Shipping, payment fees and ads are not deducted. How profit is calculated →

Three ways in

Who it's for

Store owner

Enter your costs once. Then see which bestseller carries the store and which one just moves stock.

  1. 1 · Turn the cost on in WooCommerceSettings → Advanced → Features. It is a WooCommerce setting, not a Merchgain one.
  2. 2 · Enter your costsOn the product, next to the price. In bulk: from a spreadsheet or from another plugin.
  3. 3 · Install MerchgainThe report is there at once. Older orders get an estimate.
Install free

Bookkeepers

Gross profit and margin for a closed month, with the definition of every number on the same screen.

  • Net revenue after discounts, excluding tax and shipping
  • Refunds count against the period they were issued in
  • CSV export with the same range and sorting as the screen
  • The estimate stays separate: only recorded figures go in the books
How profit is calculated →

Agencies and developers

A margin report on a client's store with no subscription, no account, and nothing sent anywhere.

# costs from a spreadsheet into the WooCommerce field (dry run first)
wp eval-file fill-costs.php costs.csv
# costs from another plugin into the WooCommerce field
wp eval-file migrate-costs.php
  • Three read-only abilities for an AI assistant (WordPress 6.9, Abilities API)
  • HPOS and legacy order storage, no custom tables
Bulk cost import →
How it works

WooCommerce records the cost. Merchgain reads it and does the math.

  1. Product

    You enter the cost in the “Cost of goods” field, next to the price.

    price $100 · cost $60
  2. Order

    At the moment of sale, WooCommerce records the item's cost. A later change to the product cost doesn't touch it.

    item cost $60
  3. Merchgain

    Reads the orders in the range you pick and never changes them.

    $100 − $60 = $40 profit
  4. Report

    In the summary, in the product and category tables, in the CSV.

    margin 40%

Costs entered partway through the year

Orders from the day you entered costs have a cost recorded at the sale. Earlier ones get an estimate from today's product cost: marked ≈, in a panel of its own, never in one total with the recorded figures.

Turn the cost field on as early as you can: an order placed while it is off never gets a recorded cost, only an estimate. And the estimate is off by exactly as much as your purchase price has changed since the sale. How the estimate works and when it misleads →

Before you install anything

Check something now, without installing.

Calculator in your browser

Calculate margin and markup

Or the other way around: enter cost and margin to get the selling price. It all runs in your browser.

Open the margin calculator
Calculator in your browser

Price a discount before Black Friday

Next to it, break-even ROAS: the point where an ad pays for itself, worked out from your margin. Break-even ROAS →

Open the discount calculator
WordPress.org

Try Merchgain in your browser

A sample store with a year of orders opens in under a minute: one product sold below cost, three with no cost and two months shown as an estimate.

Open Live Preview on WordPress.org

All calculators on one page → Or look at the sample report on this site →

Free, from the WordPress.org directory

One plugin. No account, no limits, no trial.

WooCommerce store

Merchgain: profit and margin report

A free plugin from WordPress.org. It runs in your own admin, with no account, and sends nothing anywhere.

Freeno trial period
No limiton orders or products
CSVexport of every view
  • WooCommerce 10.3+, WordPress 6.7+, PHP 7.4+
  • Works with HPOS and with legacy order storage
  • Report screen in English and Polish

Version 0.2.8, released October 31, 2026, GPL license. In the directory since September 8, 2026.

From the same developer

Merchlint: catalog audit

Merchgain tells you what earns. Merchlint tells you which products in your catalog are losing you money: products that sold last year but can't be bought today, GTINs Google will reject, photos too small for Merchant Center.

  • A free WooCommerce plugin that also only reads
No reviews yet. Here is what you can check instead.

Why trust the numbers from a plugin you haven't heard of.

The code is open

GPL license, all of it in the WordPress.org repository, and the method written up on a page of its own.

It can't change anything

No product, price, order or cost is ever changed. It saves only its own settings and cached report results.

Missing data is not a cost of zero

An item with no cost counts toward revenue, not profit. The coverage line tells you how much of the report is based on real data.

The estimate stays separate

≈ beside every estimated figure, a panel and columns of its own. It never goes into the recorded totals.

Actively maintained

Four releases in October 2026: 0.2.5, 0.2.6, 0.2.7 and 0.2.8. A changelog to read before you update.

Who is behind it

Baltano, an independent software developer, not connected with WooCommerce or Automattic. One address for every question: contact@merchgain.com.

Answers and guides

Free guides: cost and margin in WooCommerce.

A WooCommerce profit report: cost of goods sold (COGS), gross margin by product and category, a margin vs markup calculator, selling price from margin, discount and margin, break-even ROAS. Every answer has its own page and says what WooCommerce itself does and what Merchgain does.

Questions

What's missing from this report? Tell us.

Nothing here is for sale. The only question this site asks is what a profit report should show and does not. Your answers decide what we build next.

contact@merchgain.com

Also Polskicała witryna, wtyczka i kalkulatoryDeutschdie Website und die Rechner, das Plugin vorerst auf EnglischEspañolla web y las calculadoras; el plugin, de momento en inglés

A language shows up here once its pages are actually written. Nothing on this site is machine-translated, except the German and Spanish pages, which no native speaker has reviewed yet.