The cost of an item is what you paid for it, not including shipping or fees/freight. Since your costs can change over time, Thrive assigns a cost to every unique batch of inventory that comes in. We refer to these as lot costs.
Tracking costs by lot keeps your sales and inventory reports accurate over the long haul. Thrive keeps track of your lots on an industry-standard FIFO (first-in, first-out) basis.
Most POS systems (including all of the systems we integrate with) do not track costs by lot, so these systems provide inaccurate historical reporting when your costs change.
To manage costs efficiently, you'll want to pay attention to your products' default costs as well as their lot costs. Keep reading for more information about the differences between the two types of costs and how they work together:
Default Cost
The default cost is your fallback. This is what Thrive assumes you will pay for your product whenever you receive a new shipment until told otherwise.
You'll see this value in gray on the Products page.
Setting and Editing Default Costs
The Edit Products Page - Enter the default cost once to be used across multiple locations.
NOTE: Location-specific costs can also be set for a product. To find out more, click here.
From the Products page - Click the "Actions" button and select "Edit," as shown here:
Via Bulk Upload
Use the "Edit Variants" bulk upload tool - This spreadsheet includes the default for all locations (Column H, "Default Cost") as well as the option for location-specific differences (e.g. "Denver Default Cost").
Important Note
Receiving inventory at a dollar amount different from your default cost will never automatically change the default itself. Historical default costs are not tracked, since you can see what you actually paid in your lot cost history (more on that below).
How Default Cost Is Used
POS sync: If your POS system supports costs, we sync the default cost to the POS.
Importing from a sales channel: answering Yes to the cost question when you run an import can replace the default costs in Thrive with the ones your sales channel sends, depending on the sales channel. A cost you set by hand for a single location can be replaced this way too.
Receiving inventory: When you go to Receive inventory on a Purchase Order, in the Edit Product panel, through Bulk Actions from you catalog pages, through the mobile barcode scanner app, or on a bulk upload, we'll suggest the default cost. If you are getting the products for a different cost though, you can enter the cost and it will be reflected on the lot cost.
Inventory reconciliation: When you reconcile inventory quantities, editing to a higher number will automatically create a new lot using the default cost.
Selling below zero: If you sell more units than you have in stock, Thrive opens a new lot for the units you did not have and gives it the default cost for the location where the sale happened; that becomes the current lot cost. The new lot holds the units you were short as a negative quantity. If you were already below zero, the units come out of the lot Thrive opened last time and keep the cost it was given then — today's default cost is not stamped on it again. Two things to keep in mind:
If no default cost is set at that location, those units record no cost. If none of that variant's sales in the period has a cost, its cost, profit and margin show as empty (a dash or "Not set", depending on the screen); if some do, the uncosted sales count as zero cost and zero profit — they add revenue without adding profit, so they pull a positive margin down. Report totals always include these sales at zero profit.
If the sale used up the last of your stock as well as going below zero, the cost recorded for that sale is a blend of the two: what the remaining units actually cost, plus the default cost for the rest — so it is not the default cost on its own. It shows a number as long as at least part of that sale had a usable cost; if none of the stock it drew on had a cost, the line has no cost of its own, unless the sale had an add-on (modifier) — on Square and Clover an add-on gives the line a recorded cost, even $0.00. On accounts set up to use Average Cost, Thrive uses each lot's average cost when one has been calculated; otherwise it uses the lot's own cost.
Internal transfers: When you transfer inventory between locations, we'll use the default to display "estimated cost" for each variant.
Lot Cost
A "lot" of inventory is defined as a group of units that arrived in a given shipment. For instance, if I add a quantity of 12 to one of my products, I have added a lot that contains 12 units.
The lot cost is the cost-per-unit applied to a given lot. Thrive assumes you sell inventory on a FIFO (first in, first out) basis, so your oldest available lot is always deducted first.
How to Set Lot Costs
Lot costs are applied when receiving inventory by any means. The default cost will be used or suggested if one is available. If no default cost has been set and you don't enter a value, the lot cost will be left blank (that is, "Not Set").
A product without a quantity in stock and no quantity history cannot have a lot cost, since by definition there is no lot to which a cost can be applied. These products will say "Not Set" even if a default cost is in place. Simply add a quantity and you'll see the lot cost appear.
The lot cost is in blue under the Cost column of the old Products Page. You'll also see "Not Set" if there's no lot cost set. The default cost is displayed in gray underneath.
How to View and Edit Lot Cost History
When editing past lot costs, this will retroactively adjust the both the past lot cost range on the Inventory report, and the past COGS on the Product Sales report — it happens in the background, and the profit on those past sales is worked out again from the new cost. Here's how to do this based on your account experience:
To access your lot history, click on the current lot cost in blue on the Products page.
Then, use the Edit button in the top right corner to make changes. Simply type over any cost to change it (no need to backspace or delete).
NOTE: The red dots next to the different lots means that the lot is in stock anymore. The green dots mean the lot is in stock.
How Lot Costs are Used
Calculating the value and profitability of your inventory on hand (see your Inventory report).
Calculating the profit for each sale (see your Product Sales report).
Calculating profit margins for each variant.
Lot costs are maintained when transferring inventory from one location to another. If the transfer spans different lots (with different costs), those will be combined to form a new lot.
A blank or empty lot cost (displayed as "Not Set") is not the same as having a cost of $0. It means Thrive doesn't know what you paid for that batch of inventory. Such a sale is recorded with no cost — see the "Selling below zero" bullet above for what the report shows.
For example, suppose I sell a product for $5. The revenue for this sale is always $5, but the calculated profit depends on the lot to which the unit sold belongs.
If the lot has no cost: the line has no cost — it shows as empty if none of this variant's sales in the period has a cost, and counts as $0 cost and $0 profit if some do. Either way the $5 of revenue is in the report totals.
If the lot cost is $2, my profit is $3.
If the lot cost is $0, my profit is $5.
Special Cases
Bundles
Bundle costs are derived from the current lot costs of their component products and are not synced out to your sales channels (for that reason). This cost is only calculated and cannot be edited directly. If your bundle cost is incorrect, double-check the costs of each component and the number of components used in each bundle. (Read more on how to manage bundles here.)
Additionally, bundles provide a structured solution for multi-pack products, ensuring the accurate deduction of inventory from the individual items and deriving precise costs for the multi-pack based on its components. This eliminates manual adjustments, making bundles particularly suitable for businesses dealing with inventory-heavy operations or requiring strict cost accuracy.
Bundles do not have lots. When a bundle is sold, Thrive calculates the cost in real time and applies it to the sale. Bundle costs cannot be edited after a sale is made.
Inventory Tracking Disabled
If inventory tracking is disabled on a product, it will not have a quantity or lot history. The current default cost for the location where the sale happened will be applied to sales (Shopify may use a default cost you set at another location). If no default cost is set at that location, the sale records no cost — blank if none of that variant's sales in the period has a cost, zero cost and zero profit if some do. Click here to read more about the inventory tracking toggle.
Historical Sales
Your lot history begins at the moment you sign up with Thrive and import or create your inventory. To set costs for sales that occurred prior to Thrive being installed, please read Backfilling Historical Costs.
Cost Averaging
Thrive does not average costs by default. Click here to read more about the cost-averaging feature in Thrive.





