How cost tracking works

ProTally tracks the cost of goods for each of your products so it can turn revenue into real profit.


Costs are recorded per price

In Stripe, a single product can have several prices — different currencies, one-off versus recurring, or tiered plans. Because the cost of delivering a sale can differ between those prices, ProTally lets you record a cost against each price, not just the product as a whole.

For every price you can configure a cost that matches its billing scheme:

  • Per-unit — a single cost per unit sold.
  • Tiered — costs that vary by volume, mirroring graduated or volume pricing. See Tiered costs.

When a payment completes, ProTally matches it to the relevant price, applies the cost that was active at the time, and deducts it (along with Stripe's fees) to produce a profit figure.

Costs have a history

Costs change — suppliers raise prices, shipping fluctuates, materials get cheaper. ProTally keeps a full history of every cost you record against a price, each with a start date marking when it takes effect.

This matters for accuracy: a sale made in March is costed using the cost that was active in March, even if you've since updated it. The most recent cost is marked Active; earlier ones are kept as historical records. See Cost history.

Missing costs count as zero

If a price has no cost configured, ProTally treats that cost as zero rather than guessing. Revenue is still tracked accurately, but profit will equal revenue (minus Stripe fees) until you add a cost. Configuring costs for every active price is the single best thing you can do for accurate reporting.

What's included in "cost"

The cost you configure represents your direct cost of goods for that price — the variable cost of fulfilling one sale. ProTally separately accounts for Stripe's processing fees, so you don't need to factor those into your cost figure. Together they make up the Expenses you see in the Account Overview.

Where to go next