Blog Open reva

Reseller Inventory and Profit Tracker Spreadsheet

Track cost, fees and profit per item and marketplace, then build a Poland quarterly-limit check and DAC7 counters from the same rows.

By reva editorial teamUpdated 7 min read
Spreadsheet with one row per resale item and columns for buy price, marketplace fee, net payout, profit, ROI and days to sell
Key takeaways
  • Per row, the template calculates net payout = sale price − fee − shipping you paid, profit = net payout − buy price − extra costs, ROI = profit ÷ (buy price + extra costs) and days to sell = sale date − listed date.
  • Type the fee from your payout or bill: Vinted's Polish price list shows no seller commission, Allegro Lokalnie bills 7.9% of item value (4.9% in Elektronika), and OLX's Annex 6 gives no pay-if-sold rate.
  • The download is zł-only. Profit per marketplace, the monthly cash view, € columns, the Poland quarter check and DAC7 counters are views you add with a pivot table or SUMIFS on the sale date.
  • In Poland, unregistered activity is capped at 10,813.50 zł of revenue per quarter in 2026, and platforms report sellers with at least 30 sales or more than the equivalent of €2,000 paid out in a calendar year. General information, not tax advice.

A reseller inventory spreadsheet needs one row per item: what you paid, where it sold, the fee, the postage you covered and three dates. Formulas do the rest. This free template has those columns in zł, with net payout, profit, ROI and days-to-sell formulas filled in.

Download the comma CSV for Google Sheets and English Excel or the semicolon CSV for Polish Excel. Marketplace facts were checked on 13 September 2026; other numbers are examples.

Check one row first; this calculator runs the sheet's profit and ROI arithmetic.

ROI calculator
Profit€33
ROI73.3%
ROI per 30 days held104.8%
Runs in your browser. Nothing you type is sent anywhere.
ROI = (payout − purchase cost − extra costs) ÷ (purchase cost + extra costs) ROI per 30 days = ROI ÷ days from purchase to payout × 30

Example: row EX-001 is a jacket bought for 40 zł plus 5 zł of cleaning, sold on Vinted for 120 zł with no seller fee. Enter 40, 5 and 120, and say payout came 20 days after purchase: profit 75 zł and ROI 166.7%, matching columns N and O. The 250.0% per 30 days is calculator-only, as the sheet has no payout date.

What's in the file and what you build

Question In the download?
Did this item make money? Yes: columns N, O
How long did it sit? Yes: column P
Which marketplace pays best per item? Build a pivot
Is cash growing or stuck in stock? Build a pivot
How close am I to the Polish quarterly limit? Add a sheet
Will a platform report me under DAC7? Add counters

How to set up the reseller inventory spreadsheet

From download to first real row
  1. 1Pick the fileSemicolon CSV for decimal-comma Excel
  2. 2ImportSheets: File, Import. Excel: save as .xlsx
  3. 3Fix formatsE, H, I as Date
  4. 4Delete examplesRows EX-001 and EX-002
  5. 5Fill downCopy M–P down
Empty rows show #DIV/0! in O; an error in P usually means a text date.

Columns explained: the minimum fields per item

Values are from example row EX-001, not market data.

Col Header Example What to enter
A item_id EX-001 Tag code
B item EXAMPLE jacket Short description
C category Clothing From a fixed list
D marketplace Vinted Where it sold
E buy_date 2026-08-02 Day you paid
F buy_price_zl 40 Price paid
G extra_costs_zl 5 Delivery to you, cleaning, repair
H listed_date 2026-08-03 First listing
I sale_date 2026-08-20 Blank until sold
J sale_price_zl 120 Your price
K marketplace_fee_zl 0 Fees charged for this item
L shipping_you_paid_zl 0 Postage you paid
M net_payout_zl 120 J − K − L
N profit_zl 75 M − F − G
O roi 166.7% N ÷ (F + G)
P days_to_sell 17 I − H
Q notes Lot, return, write-off

Unsold items keep their row with a blank sale date: that cash is already spent. Which costs belong in G is argued on COGS for resellers.

Selling in euros? Add columns R (price in €) and S (rate) after notes and set J to =R2*S2; adding them at the end keeps every letter on this page valid. Note which rate you used.

Fee fields and profit per marketplace

No fee presets: type what was charged.

  • Vinted (private seller, Poland): the price list shows no seller commission, so K is 0 unless you paid for a Bump or Showcase. Updated Terms take effect on 8 October 2026 in Poland (5 October in Germany and France), and press reports the Buyer Protection fee being renamed "Vinted fee"; re-check the price list after that.
  • Allegro Lokalnie: 7.9% of item value on Kup teraz and auctions, 4.9% in Elektronika, 0 zł on local listings. It goes on your Allegro account bill and comes back if you refund the buyer through Allegro. Example: row EX-002 has 49 zł in K on a 1,000 zł console, assuming it is listed in Elektronika.
  • OLX: Annex 6 describes Zapłać, jeśli sprzedasz as a percentage deducted from the payout but gives no rate, so read the amount off the payout.

To test a fee before listing, use the resale profit calculator. For profit per marketplace, pivot with marketplace (D) as rows; sum of N, count of A and average of P as values; sale date (I) as the filter.

Example month: profit per item by marketplace
Vinted (22 items)38 zł
Allegro Lokalnie (9 items)51 zł
OLX (6 items)44 zł
Invented inputs. Vinted leads on total profit, not per item.Illustrative example, not market data

Read profit per item next to days to sell: more per item at twice the wait may not be worth the tied-up cash. Who pays which fee is in the reselling profit guide.

Monthly view: cash vs profit

Pivot on two different date columns:

profit = sum of N, sale date (I) in month payouts = sum of M, sale date (I) in month stock bought = sum of F + G, buy date (E) in month cash change = payouts − stock bought

Example: 2,600 zł of payouts on items that cost 1,030 zł is a 1,570 zł profit. Buy 2,300 zł of new stock that month and cash rises by only 300 zł. For how fast stock turns into cash, see the inventory turnover calculator.

Poland tab: quarterly limit tracker

biznes.gov.pl caps revenue from unregistered activity (działalność nierejestrowana) at 225% of the minimum wage per quarter: 10,813.50 zł from 1 January 2026. It requires a simplified sales record and is open only to people with no business activity in the previous 60 months. Exceeding the limit means registering in CEIDG within 7 days.

Add a sheet named "PL quarter":

B1 quarter start date B2 quarter end date B3 =SUMIFS(Tracker!J:J, Tracker!I:I, ">="&B1, Tracker!I:I, "<="&B2) B4 10813.50 B5 =B3/B4

Replace "Tracker" with your sheet name; Polish Excel uses semicolons. Set your own warning share for B5. Ask a tax adviser whether sale price is the right revenue figure; this is general information, not tax advice. Reselling in Poland without registering a business covers private items versus buying to resell.

DAC7 counters: matching records to platform reports

The Ministry of Finance says a platform reports a seller with at least 30 sales, or more than the equivalent of €2,000 paid out, in a calendar year, and that DAC7 creates no new tax. Copy the quarter sheet, set B1 and B2 to 1 January and 31 December, and add a criterion such as Tracker!D:D, "Vinted": COUNTIFS for sales, SUMIFS on M for payouts.

  • Allegro combines a seller's accounts across Allegro and Allegro Lokalnie, so add both counts in one cell; unpaid Lokalnie transactions don't count.
  • Vinted sends you a copy of what it reports; compare it with your count.
  • Currency: the pages we read don't name the exchange rate used, so a € counter is only an early warning.

Forms and deadlines per marketplace are on DAC7 for resellers.

Common tracking mistakes

  • Entering the buyer's checkout total as the sale price
  • Overwriting the listed date after a relist
  • Spelling one marketplace three ways, which splits the pivot
  • Deleting unsold items instead of leaving the sale date blank
  • Leaving rows EX-001 and EX-002 in your totals

When a spreadsheet stops being enough

Two signs: updating rows takes longer than listing, or crosslisting makes a missed delist likely. The inventory management guide covers when to switch.

Frequently asked questions

Is the template free?
Yes, both CSV files download from the link with no sign-up. Take the semicolon file if your Excel uses a decimal comma, the Polish regional default, and the comma file otherwise. Delete the two EXAMPLE rows before entering real stock.
Does it work in Google Sheets and Excel?
Yes. The row formulas only subtract and divide cells, so translated function names can't break them. The usual failure is dates imported as text, which breaks days to sell. Set the three date columns to a date format and re-type one date to confirm.
How do I track profit across several marketplaces?
Keep one row per physical item, even when listed in three places, and fill in the marketplace once it sells. A row per listing counts the same buy price up to three times and wrecks your ROI. Delist the other copies as soon as one sells.
Can it track the Polish unregistered-activity limit?
Not out of the box; add the five-cell sheet shown on this page. Sum all marketplaces together, because biznes.gov.pl applies the 10,813.50 zł cap to your revenue from the activity in each quarter. Ask a tax adviser what counts as revenue; this is not tax advice.
Do I need receipts for items I bought second-hand?
The official pages we researched don't say what proof a private reseller must keep. podatki.gov.pl works out income on a private item sold within half a year as revenue minus acquisition cost, so file a receipt, screenshot or transfer reference under the item code. Ask a tax adviser what counts.
Does it replace accounting advice?
No. It gives your working numbers, but it can't decide whether your selling is private or business activity, what is deductible, or whether VAT applies. Treat it as tidy input for a doradca podatkowy or accountant.

Sources

  1. Vinted Poland price list (cennik) checked 13 Sept 2026
  2. Vinted Poland Terms (version in force, with update notice) checked 13 Sept 2026
  3. Value Added Resource: Vinted Europe terms update, October 2026 checked 13 Sept 2026
  4. Vinted Poland: DAC7 checked 13 Sept 2026
  5. Allegro Help: Fees on Allegro Lokalnie checked 13 Sept 2026
  6. Allegro Help: Seller data collected and reported under DAC7 checked 13 Sept 2026
  7. OLX.pl Annex 6: listing packages and Zapłać, jeśli sprzedasz checked 13 Sept 2026
  8. biznes.gov.pl: Działalność nierejestrowana (unregistered activity) checked 13 Sept 2026
  9. gov.pl Ministry of Finance: Co warto wiedzieć o dyrektywie DAC7 checked 13 Sept 2026
  10. podatki.gov.pl: Zbycie rzeczy ruchomej checked 13 Sept 2026
reva OS

Start with reva

One place to find underpriced items, check their market value and act before someone else does.

reva estimates prices from public listings. Estimates, not guarantees.