Cost settings are available to admin and owner roles, and may not be enabled on every account yet. If you don’t see the Costs section in Settings, contact the Upstack team.
Where to find it
Open Settings → Cost settings. Every cost category is a collapsible section on that one page — open a section to configure it, and only one stays open at a time.Where to start
Product defaults is the one section Upstack flags as required — until it’s filled in, its header shows a Setup badge, because without it an order can be missing a product cost entirely. A good first pass:- Product defaults — a fallback COGS % so every product has a cost
- Payment processing fees — what your gateways charge
- Shipping — what it costs to ship an order
- Order fees — any other per-order or per-item fees
Product defaults
Two settings that apply when a product is missing its own cost data:- Default COGS % — a percentage of the item’s sale price (0–100), used as the cost of goods for any product that has no specific cost. This is the fallback when a variant has no cost.
- Handling fee — a flat amount charged on every unit sold, so a line item with quantity 3 is charged three times. It’s a separate cost from COGS, and it has its own fallback: it applies only to products that don’t have their own handling fee.
Product costs
Per-variant cost overrides. If you maintain Cost per item in Shopify, Upstack syncs it automatically — those synced costs are read-only here. You can also enter your own cost for any variant, with effective date ranges; your manual entry takes precedence over the Shopify-synced value. Both Product Cost and Handling Fee here are per-unit amounts, multiplied by the quantity sold on each order. A variant’s handling fee replaces the default Handling Fee — set it to0 to charge no handling fee for that product.
Give each cost entry for a variant a different start date. If two entries share the same start date, only one of them is used for an order, and Upstack flags the duplicate so you can fix it.
Payment processing fees
Payment processing fees per gateway, entered as a flat amount plus a percentage:- Flat Fee — a fixed amount per transaction (e.g. $0.30)
- Percent Fee (%) — a percentage of the order (e.g. 2.9%)
Shipping
Choose how Upstack accounts for shipping cost, using one of three modes:
With Shipping Profiles, each profile matches one or more countries. A profile can be a single Flat Rate or Weight Tiered, and you can set a default profile as a fallback.
Order fees
Fees that apply per order, per line item, or per refund — beyond product cost. For each cost line you choose how it’s calculated:
Each cost line is assigned a category (COGS, Fulfillment, Transaction, Marketing, Agency Fees, Opex, or Other) — which determines its contribution-margin tier — and a channel (Online, POS, or Both). Rich filters let you scope a cost to specific gateways, tags, vendors, product types, countries, or products.
Variable costs
Costs that scale with ad spend. Today this is % of Ad Spend — a percentage applied to your ad spend, with an optional filter for which ad platforms it applies to, under a Marketing or Opex category. Useful for agency fees or tools billed as a percentage of spend.Recurring expenses
Recurring overheads like rent, salaries, and software subscriptions. Set an amount and a frequency — Daily, Weekly, Monthly, Quarterly, or Yearly — and a category (Marketing, Opex, Agency Fees, or Other). Upstack averages the cost across the period so it shows up correctly in your P&L.How costs roll into contribution margin
Each cost’s category decides which margin tier it reduces:
Recurring expenses and variable costs land in the tier that matches the category you give them — a Marketing-category cost reduces CM3, while an Operating expenses, Agency fees, or Other cost reduces CM4.
See Contribution margin for how the tiers are used across the P&L dashboard.
Frequently asked questions
Do cost changes apply to past orders?
Do cost changes apply to past orders?
Yes. When you add or edit a cost, Upstack recalculates matching historical orders within that cost’s effective date range. Set start and end dates to control exactly which orders a cost applies to.
What happens if a product has no cost?
What happens if a product has no cost?
Its cost falls back to your Default COGS % from Product defaults. Set the Default COGS % first so every order has a product cost. Handling fees fall back separately — a product without its own handling fee uses the Handling fee from Product defaults.
Which costs land in which margin tier?
Which costs land in which margin tier?
A cost’s category determines its tier: COGS → CM1; Fulfillment, Transaction, Gateway, and Shipping → CM2; Marketing and ad spend → CM3; Operating expenses, Agency Fees, and Other → CM4. Recurring expenses and variable costs follow the same rule — they land in the tier matching their category.
Can I set costs in a different currency?
Can I set costs in a different currency?
Mostly. Order fees, payment processing fees, shipping, recurring expenses, variable costs, and the Product defaults handling fee each carry their own currency, and Upstack converts them into the order’s currency. Per-variant Product costs are the exception — those are always in your store’s currency.
Who can edit cost settings?
Who can edit cost settings?
Admin and owner roles. The Costs section may not be enabled on every account yet — contact the Upstack team if you don’t see it.
Related
Contribution margin
How CM1–CM4 and the P&L dashboard use your costs.
Manage costs from the CLI
Read and update cost configuration with the
upstack costs command.Attribution and reporting
How Upstack attributes conversions and calculates reporting metrics.
Costs API
Manage cost configuration programmatically.