Buy price is not true cost
You found it first. You talked the lot down. The hangtag says ฿80 and your brain files that as “cheap.”

You found it first. You talked the lot down. The hangtag says ฿80 and your brain files that as “cheap.”
Then the shirt needs a wash. A button. A press. A bag. A ride across town. A cut from the selling app. Days on the rail while the next lot is already calling.
That is not because you sourced badly. Buy price and true cost per piece are not the same number. Buy price is what you paid the seller. True cost is what the shop spent to make that one piece sellable, shippable, and gone.
The owner who sees this first is not an accountant. They just stopped trusting the ticket on the lot.
You got it cheap. That is not the same as making money
Most secondhand nights end the same way. Count the haul. Smile at the low buy. Hang it. Post it. Sleep.
Morning comes with soap, a needle, an iron, a kraft bag, shipping the shop covered, and a platform cut already gone before the payout lands.
The story in your head is “I bought well.” The story in your pocket is “why is nothing left after a good week.”
Those two stories do not collide because of luck. They collide because the shop is counting the wrong first number.
A cheap buy feels like a win. Leftover money keeps the rail alive.
The ticket on the lot is missing lines
The buy ticket is good at one job. It tells you what left your hand at the source.
It is not good at true cost per piece.
Lines that usually vanish after a house lot, a Pratunam pass, or a Chatuchak morning:
- Buy-in, or what you paid for that one piece, or its share of a mixed lot
- Wash, stain work, air-dry time — cleaning
- Button, hem, zip, sole — repair
- Press, hanger, steam, photo day
- Bag, tape, wrap, sticker — packing
- Shipping the shop paid, in full or in part
- Platform fees stacked on top of each other, not one clean cut
- Days on the rail while cash sits still
You do not have to fill every line tonight. If you fill none of them, a cheap buy can lie every week.
Thai marketplace fees in 2026 are not one percent. Commission, a transaction fee often quoted around 3.21% including VAT, and a small per-order infrastructure charge can stack into the mid-teens before ads, seller-funded vouchers, or a campaign. That stack is industry context. It is not a KamraiDee result, and it is not your category’s live rate until you read your own payout.
Example (not an app result): bought for ฿80, sold for ฿299
Say one shirt comes off a weekend lot at ฿80. You list it at ฿299 and it sells.
If you only subtract the buy ticket, you will think you kept ฿219. That number feels warm. It looks like the rail is winning.
Now add the lines the ticket does not show. This is a worked example, not a result claimed by the app, and not a live rate for every category or courier.
| Line | Baht |
|---|---|
| Selling price | ฿299 |
| Buy-in | ฿80 |
| Clean | ฿15 |
| Repair | ฿20 |
| Press, hanger, photo | ฿10 |
| Packing | ฿12 |
| Shipping the shop helped cover | ฿25 |
| Platform fees stacked, example 18% | ฿54 |
| Rough true cost per piece | ฿216 |
| Money left | ฿83 |
The shop did not miss ฿0. The shop missed the gap between ฿219 it thought it kept and ฿83 it actually kept.
That gap is ฿136 on one shirt. Still no live discount. Still no returned box. Still no week of dead stock.
If tonight’s live sale asks you to drop the same shirt to ฿179 because “you only paid ฿80,” leftover goes negative. ฿179 minus ฿194 is a ฿15 hole. The comment chat will still clap. The pocket will not.
Why hard-working sourcers blame the wrong thing
Shops get trained to hunt. Hunt is the identity. Cheap buy is the badge. Friends praise the lot, not the leftover.
But the owner who walks Chatuchak, sorts a house pile, washes, mends, and goes live until late is not working for a low ticket. They are working so the shop has money left to buy the next rail.
When the number is incomplete, hard-working owners blame themselves first. Bad at live. Weak at photos. Not sourcing hard enough.
Most of the time the hunt is not the leak. The leak is a selling price set from the buy ticket, with true cost per piece left half-counted.
People who hunt and sell should not go broke because the first number was incomplete.
The owner who knows the number is not cooler. They just stopped guessing.
A short plan you can count today
Do not wait for a pretty system. Do not wait for bookkeeping. Count one piece.
- Stock — pick one piece on the rail that sold this week, or one that is about to go live
- True cost per piece — write buy-in + clean + repair + press + pack + shipping you covered + fees already cut
- Price with a real margin — see if leftover per piece still funds the next lot; if it does not, do not discount before you count
- Sell / restock — sell the piece you numbered, then move to the next one
These four steps are a plan you can run in your head today.
Do one piece. Do not wait for the whole rail
Do not sit down with four hundred hangers. Your brain will leave the room.
Take the shirt that is easiest to remember. Write six lines. Look at what is left.
If the leftover matches what you thought, the shop can breathe. You were not guessing.
If it does not match, the shop still wins. You found the leak before you cut the live price again.
KamraiDee sits here. It does not arrive to turn you into an accountant. It sits with the owner who sourced well and still has thin cash, and helps them finish true cost per piece before they set the next tag.
The first step is small. One piece. Today.
FAQ
I bought a mixed lot. How do I know the buy-in per piece?
Split the lot across the pieces that can actually sell. Do not dump the whole ฿2,000 onto the one branded jacket and call the rest free. A later post will walk mixed lots. For today, give every wearable piece a share, even a rough one.
Cleaning and repair feel like “just helping the clothes.” Why put them on the piece?
Because the shop paid them. Soap, water, a tailor, a new zip, an evening with the iron — that money left the shop so this piece could sell. If it is not on the piece, it disappears, and the next price gets set too low.
I only sell on LINE. There is no marketplace fee.
Buy price is still not true cost. Clean, repair, pack, ship, and days in the cupboard still take money. The leak is just a different line.
Do I need the exact platform rate first?
No. Start with what was cut from this week’s payout. A real number from the payout page beats a guess. Rates change. The habit of counting should not.
Do I have to raise prices tonight?
No. Today you look. Tomorrow you decide which pieces can take a live cut and which pieces go broke if you smile and drop ฿100.
Do I have to move the shop into an app before I can count?
No. Paper or a phone note is enough for today. An app helps when you want to repeat the count on every piece. Do not wait for a pretty tool and skip today’s number.
If you keep pricing from the buy ticket vs if you count true cost
If you keep pricing from the buy ticket, you will take the live cut, take the friend price, and take the next lot because “it was cheap.” The rail stays full. Restock cash gets thinner every week, with no moment that yells at you.
If you count true cost per piece, the cheap ticket stops running the shop. You see leftover baht. You keep the pieces that fund the next source day. You stop discounting the ones that already sit near zero.
Know true cost. See real profit. Keep more money in the shop.
Pick one piece off the rail today
Do not start with the whole shop. Start with the piece you bought last weekend.
Write the lines. See whether ฿80 was the cost, or only the first line.
If the gap makes you sit up, that is the point. Stay there. Do not close the note and go hunt another lot yet.
Add the LINE official account and send the name of that one piece. We will walk true cost per piece until leftover money is visible, before the next live price.
Know true cost. See real profit. Keep more money in the shop.