GradeThread
Reseller in thrift store aisle checks phone with route map and spreadsheet to calculate ROI per location

The True Cost of a Thrift Stop: How to Calculate ROI Per Location and Route Them Like a Pro

By GradeThread Team · ·9 min read ·Updated
Thrift sourcingReseller financesroute-planningroi-trackingFlipDesk

ROI per thrift store location = (revenue from items sourced there minus total cost of the trip, including your time valued at an hourly rate) divided by that total cost. Run this per store over 5-10 trips and you'll find that your "go-to" location is often not your most profitable one. It's just the closest.

Most resellers track cost per item: what they paid at the register. That's the least useful number in your business. It ignores the 40 minutes you spent driving there, the 90 minutes you spent digging through racks, and the gas you burned getting there and back. A $6 flannel that took two hours round-trip to find isn't a $6 flannel. It's a $6 flannel plus roughly $35-50 of your labor, depending on what you value your hour at. Track enough trips this way and you'll see which stores are quietly draining your sourcing time for mediocre returns, and which ones you've been underrating because they don't feel exciting to shop.

The Real Cost of a Thrift Stop (Beyond the Price Tag)

Every thrift stop has four cost components, and resellers who only track the first one are flying blind:

Add these together and you get your true cost per trip. Compare that to what you actually resold those items for, and you have a real ROI number, not a vibe.

Here's the math on a single example trip. Drive: 24 round-trip miles at $0.70 = $16.80. Time: 2.25 hours (45 minutes of driving, 90 minutes in store) at $25/hour = $56.25. Purchase: 9 items for $38. Processing: 9 items at 6 minutes each = 54 minutes, or $22.50. Total cost: $133.55. If those nine items sell for $215 combined, net profit is $81.45 and ROI is about 61%. Looking at the register total alone, you'd have thought you made 5x your money.

One more cost most people skip: items that never sell. If 2 of those 9 pieces age out and get donated back, their purchase and processing cost stays in the trip total with zero revenue against it. Leave them in. That's exactly the drag you're trying to measure.

The ROI Formula to Calculate ROI Per Thrift Store Location

Use this per store, calculated over a rolling set of trips (five minimum, ten is better, because one great trip skews the average):

ROI % = (Total Revenue − Total Cost) ÷ Total Cost × 100

Where Total Cost = Purchase Cost + Drive Cost + Time Cost + Processing Cost, summed across all trips to that location. Total Revenue = actual sold price of everything sourced there, not listed price, not estimated comp. Use net revenue if you want a true picture: subtract eBay final value fees, shipping you paid, and promoted listing fees from the sold price. If an item hasn't sold yet, either exclude it or use a conservative comp-based estimate and flag it as unrealized.

This single formula answers the question every serious sourcer eventually asks: which thrift stores are worth your sourcing time, and which ones are habit. A store with a 220% ROI on $400 invested over six trips is outperforming a store with 90% ROI on $600 invested, even though the second one "feels" bigger because you spend more there.

Watch the maturity problem, too. Trips from the last three weeks will always look worse than they are, because items haven't sold yet. Calculate ROI on trips that are at least 60-90 days old, or report sold-to-date and sell-through percentage side by side.

Building Your Thrift Store ROI Tracker: Step by Step

Whether you build a cost per hour thrift sourcing spreadsheet or use a FlipDesk sourcing log, the structure is the same:

  1. Create one row per trip with columns for store name, date, drive time, drive distance, in-store time, purchase cost, and item count.
  2. Set your hourly labor rate once and apply it consistently. Use what you actually earn per effective sourcing hour based on your last quarter's numbers, not an aspirational figure.
  3. Log drive time and distance for every trip, even short ones. Five minutes feels free. It isn't, over 200 trips a year.
  4. Record purchase cost per trip as one lump sum, then break it out per item only when you tag and SKU each piece.
  5. Assign a SKU to each item as you process it, linking it back to the store and trip row so revenue can be traced back later.
  6. Log processing minutes per trip (photographing, measuring, grading, listing) so heavy-repair hauls show their real cost.
  7. When an item sells, log the sold price and fees against its SKU, which rolls up to the store-level total.
  8. Recalculate ROI per store monthly. Rank your stores from highest to lowest ROI, not highest to lowest raw profit. A small store with high ROI is worth more of your time than a big store with mediocre ROI.

[Screenshot placeholder: FlipDesk sourcing log showing per-trip cost breakdown rolling up to per-store ROI]

If you're doing this in a spreadsheet, one SUMIFS formula per store pulling from your trip tab and your sales tab does the job. The usual failure is the SKU link: if you can't tie a sold item back to a store, the whole exercise collapses. Put the store code in the SKU itself (for example GWA-0412-017 for Goodwill A, trip of April 12, item 17).

What the Numbers Actually Look Like

Here's an anonymized example from a mixed-category reseller running four regular stops over six weeks:

StoreAvg trip cost (drive+time+purchase)Avg items sourced/tripAvg revenue/tripNet profit/tripROICost per hour
Suburban Goodwill A$719$210$139196%$14.20
Boutique consignment thrift$964$260$164171%$32.00
Downtown Goodwill B ("favorite")$8811$150$6270%$29.30
Rural estate-adjacent thrift$1406$310$170121%$18.70

Downtown Goodwill B was this reseller's most-visited store: closest to home, familiar layout, comfortable racks. It was also the worst performer by ROI. It generated the most items per trip but the lowest average sale price, because the inventory skewed heavily toward high-wear basics that graded out at Good or Fair more often than Excellent or Very Good. Volume without condition quality doesn't translate to revenue. Suburban Goodwill A, visited less often, turned out to be the quiet workhorse.

Note the boutique consignment thrift: only 4 items per trip, but the second-best ROI. Item count is a vanity metric. Revenue per hour of total effort is the one to watch.

Routing Like a Pro: Sequencing Stops by ROI Tier

Once you have ROI ranked per store, thrift sourcing route planning profitability stops being about geography and starts being about hierarchy. Build your route in tiers:

You're not planning a route to see the most stores. You're planning a route that front-loads your best-performing hour of the day at your best-performing location. Most resellers do the opposite: they hit the closest store first out of habit, then arrive at the high-ROI store tired, with less time and less patience to dig.

Also ask each Tier 1 store about its schedule. Many chains restock on set days and run color-tag or half-price sales on a weekly rotation. Log the day of the week on each trip row. After ten or so visits, you'll see whether Tuesday morning really beats Saturday afternoon at that location, and you can build the route around it.

When to Cut a Store Loose

A store earns a spot on your route. It doesn't keep it by default. Cut a store when any of these hold true over a rolling 90-day window:

  1. ROI has stayed under 50% for three consecutive months with no seasonal explanation (holiday donation dumps, back-to-school clearouts).
  2. Cost per hour sourced there exceeds your effective hourly rate from selling. You're paying to shop, not earning to shop.
  3. Item condition has degraded: more pieces are grading Fair or Poor on Fabric Condition and Structural Integrity than in prior months, meaning even good finds sell for less.
  4. A closer or equal-distance store has overtaken it in ROI for two straight tracking periods.

Don't cut a store on one bad trip. Thrift inventory is noisy, and a slow Tuesday doesn't mean the store is dead. Cut on trend, not on incident.

Why Condition Grade Is Part of the ROI Story

Two stores can produce the same number of items per trip and still post wildly different ROI, because the revenue side of the equation is driven by condition, not just style or brand. A rack of graphic tees that grade out mostly Very Good and Excellent will out-earn a rack of the same brand grading mostly Good and Fair, even at identical sourcing cost. That's why your ROI tracker should log condition grade alongside SKU and store. It helps with pricing accuracy, and it shows you over time which stores consistently produce higher-grade inventory across the five factors: Fabric Condition, Structural Integrity, Cosmetic Appearance, Functional Elements, and Odor & Cleanliness. A store whose donations skew toward barely-worn NWT or NWOT pieces from a wealthier zip code will beat a store full of heavily-loved Good-grade basics, dollar for dollar, almost every time.

Condition also shows up on the cost side. Pieces that grade Fair or Poor tend to bring more returns and "not as described" disputes, and those refunds come straight out of that store's revenue. Tag refunds back to the SKU so a store's ROI reflects what you kept, not what you sold and then paid back.

Try It on Your Next Route

You don't need six months of data to start. Pick your next four thrift stops, log drive time, in-store time, and purchase cost for each, and grade what you bring home honestly. After three trips per store, run the ROI formula and see which stop actually earns its place on your route. FlipDesk's sourcing log rolls this up automatically (trip cost to SKU to sold price), so by month two you're ranking stores on real numbers instead of gut feel.

Frequently asked questions

How do I calculate ROI per thrift store location?
Add purchase, drive, time, and processing costs across 5-10 trips to one store. Subtract that from the actual sold revenue of items sourced there, divide by total cost, and multiply by 100.
What hourly rate should I use for thrift sourcing time?
Use your real earnings per effective sourcing hour from the last quarter, not an aspirational number. Apply the same rate to every store so comparisons stay fair.
How many trips do I need before the ROI number is reliable?
Five trips is the minimum, ten is better. Also use trips at least 60-90 days old so unsold inventory doesn't make a store look worse than it is.
How often should I visit my highest-ROI thrift stores?
Tier 1 stores weekly, ideally first on your route. Tier 2 every 10-14 days, Tier 3 monthly, and Tier 4 only on a specific tip.
When should I stop going to a thrift store?
When ROI stays under 50% for three months without a seasonal cause, cost per hour exceeds your selling rate, or condition grades keep slipping. Judge the trend, not one trip.
Try FlipDesk free →
Save to Pinterest