A camera body bought for $420 and sold for $610 has a $190 gross spread before expenses. Marketplace fees, payment processing, shipping supplies, outbound postage, taxes, and return costs all change the final amount. A transaction record should list those costs separately from the sold price.
Reselling is won or lost at the buy, but confirmed after every cost is recorded. Track the wrong number and you will keep replenishing inventory that creates revenue without producing usable cash.
What reseller profit tracking must measure
Your tracker should answer three questions for every item: What did it truly cost to acquire? What did it cost to sell? How much cash remains after the transaction closes?
The cleanest starting point is landed cost. This is not just the listing price. It is the full amount required to get an item into your possession and ready for sale:
Landed cost = purchase price + inbound shipping + sales tax + buyer premium + repair or cleaning costs + allocated sourcing expenses
Allocated expenses need judgment. If you drive two hours to pick up a $40 chair, fuel and time matter. If you buy a 20-item lot, divide shared shipping and any lot-level fees across the items using a sensible method, usually based on estimated resale value or unit cost. Do not assign every item an equal share if one piece carries most of the value.
Next, track selling costs separately. These normally include marketplace fees, payment fees where applicable, promoted listing fees, outbound shipping, packing materials, insurance, and refunds. Keep these fields separate even if your selling platform combines some charges. You need to know whether a weak result came from overpaying, shipping too cheaply, or paying too much to get the sale.
Net profit = sale price + shipping collected - landed cost - marketplace fees - payment fees - outbound shipping - packing - advertising - return costs
For a straightforward margin figure, use net profit divided by the total amount the buyer paid. A $50 net profit on a $250 order is a 20% net margin. For buy decisions, many operators also use return on investment:
ROI = net profit / landed cost × 100
Margin tells you how efficiently revenue turns into profit. ROI tells you how hard your purchase capital worked. Both matter. A $35 profit at 70% ROI may beat a $150 profit at 12% ROI if the higher-dollar item takes months to sell and ties up capital.
Build a profit tracker around decisions, not bookkeeping
A useful reseller spreadsheet or inventory app does not need fifty columns. It needs fields that change what you buy, list, price, and replenish.
Start each item with an inventory ID, purchase date, category, source, purchase price, inbound shipping, tax, and any prep cost. Add the expected resale price before you list it. Then record the actual sold price, selling fees, shipping collected, outbound shipping, supplies, and final profit after the sale.
The expected-versus-actual comparison is where the learning happens. If vintage Lego sets repeatedly sell for less than your comps suggested, your buy box is too high. If camera lenses sell at the expected price but postage eats 40% more than planned, your shipping estimates need work. If watches have strong margins but a high return rate, track that return rate by brand, condition grade, or price band before you scale.
Keep a status field for purchased, received, prepped, listed, sold, returned, and dead stock. This exposes a common problem: inventory that has been bought but never listed. Unlisted inventory is capital with no chance to turn over.
Track cash flow separately from profit
Profit is not the same as cash available to source. You can have a strong profitable month while your bank balance is tight because money is sitting in unsold inventory, marketplace payouts, or return windows.
Add a simple weekly cash view: cash spent on inventory, cash spent on operations, gross sales, payouts received, refunds issued, and inventory still on hand. This makes it easier to set a sourcing budget without accidentally spending money already committed to shipping labels, taxes, or a pending return.
For part-time sellers, this distinction is especially useful. If you have $1,000 to deploy, do not judge a purchase only by its projected profit. Ask how long it will take to turn back into spendable cash. A 25% ROI in ten days has a different value than 40% ROI in six months.
Set buy rules before the alert arrives
The best sourcing decisions happen before a listing appears. Build category-specific thresholds based on your own sales data, not a generic percentage from social media.
For each category, define a maximum landed cost, minimum expected net profit, minimum ROI, and maximum holding period. Electronics may require a larger repair reserve. Bulky furniture needs a stricter shipping or pickup calculation. Sneakers can carry higher platform friction and return risk. Auto parts may have excellent margins but slower sell-through unless fitment is exact.
A practical buy rule might read: buy only when expected net profit is at least $60, projected ROI is at least 35%, and the item has a realistic 60-day sell-through path. The numbers depend on your capital, category knowledge, storage space, and tolerance for returns.
Do not make the rule so rigid that it ignores exceptional opportunities. A rare collectible with a proven buyer base may justify a lower ROI because reliable demand reduces holding risk. On the other hand, a cheap item with a huge percentage margin can still be a bad buy if it takes too long to prep, photograph, pack, and ship.
Use sourcing data to protect your margin
The purchase price on an eBay result is not the number you should compare against your buy box. Shipping changes the deal. So does the condition, seller location, return policy, and whether the listing is a Buy It Now opportunity likely to disappear quickly.
TruffleHunt is built for this part of the workflow. It calculates true landed cost from price plus shipping, monitors eBay searches using the official Browse API, and can flag new listings and price drops. On Hunter Pro, hunts can poll as often as every 60 seconds. Hunter polls every 5 minutes, while the free Forager plan polls every 30 minutes. Email alerts are available on every plan; Telegram and Discord alerts are available on Hunter and Hunter Pro.
The edge is not just seeing more listings. It is filtering the right listings against a number you already know. If your tracker says a specific lens is profitable only below $280 landed, a $249 listing with $35 shipping is not a deal. A $270 listing with free shipping may be.
For cross-market sourcing, currency conversion, import costs, and regional demand need their own fields. Hunter Pro supports up to five regions per hunt across 24 eBay marketplaces in 24 countries. That can surface real arbitrage opportunities, but only if you include every cross-border cost before calling the spread profit.
Review your tracker on a fixed cadence
A monthly profit-and-loss review is necessary, but it is too slow for sourcing control. Review active inventory weekly. Look for items that are past their planned holding period, listings with too many watchers but no sale, categories with rising return costs, and purchases that consistently miss estimated margin.
Then run a monthly category review. Compare average net profit, ROI, sell-through, average days to sale, return rate, and total capital tied up. A category that produces impressive gross sales but weak ROI may be draining your operation. A smaller category with repeatable 40% ROI and low returns may deserve more capital.
Do not punish a category for one bad transaction. Look for patterns across enough sales to separate normal variance from a broken process. One damaged shipment can happen. Ten damaged shipments point to packaging, carrier selection, or product suitability.
Keep the system simple enough to use
The perfect tracker that you update once a quarter is worthless. Enter acquisition costs when you buy. Update prep costs when they happen. Reconcile actual fees and postage when the item sells. Set aside a recurring block each week to review aged inventory and source performance.
If you connect an eBay developer key for monitoring, TruffleHunt's bring-your-own-key setup is free, requires no coding, and takes about three minutes with the onboarding video walkthrough. Your connected account receives its own API quota, typically 5,000 calls per day. That matters when your sourcing workflow depends on searches being monitored consistently.
Good profit tracking does not make every deal obvious. It gives you the numbers to pass on bad inventory without hesitation and move when a listing fits your buy rule. The next deal is only valuable if the profit survives the entire trip from search result to payout.
