Revenue, costs & net profit by month
Filters
Applies to the summary, charts, and transactions table.
Cumulative net profit
Costs & expenses by category
Show Analytics
Every show from your imported Whatnot Show Analytics export(s) — see Import → Show Analytics to bring in a CSV. Est. Sales and Est. Earning are Whatnot's own estimates for the show, not reconciled ledger amounts, so they're shown here for reference only and never counted toward Dashboard or Reports profit totals. Click a column header to sort, drag a column edge to resize it.
| Date | Show | Est. Sales | Est. Earning | Orders | AOV | Buyers | First-time | Returning | Giveaway Spend | Giveaways | Duration (min) | Max Viewers | Total Views | Unique Viewers | Shares | Rating |
|---|
Estimated vs. actual, by day
Cross-checks Whatnot's own per-show estimates against the actual revenue already in your ledger, grouped by calendar day. Matched by calendar date only — Whatnot's Shows export doesn't include a show start time, so there's no reliable way to tell which sale belongs to which same-day show. Days with more than one show are combined into a single row, not split between them. This is a reference comparison, not authoritative, and (like the table above) it's never counted toward Dashboard or Reports profit totals.
| Date | Show(s) | Est. Sales (Whatnot) | Actual Matched Revenue | Variance ($) | Variance (%) | Est. Orders | Matched Txns |
|---|
Import Whatnot transactions
Import CSV exports from Whatnot. Files are read entirely in your browser — nothing is uploaded anywhere.
Sales — as a seller
Seller Hub → Financials → Ledger/Orders → export your Weekly Orders Report (or similar sales export) as CSV.
Purchases — as a buyer
whatnot.com → profile → Buying → Purchases → Download Purchase History as CSV.
Excel Item Ledger (Rocks & Minerals + Expenses)
Chris's personal Item Ledger spreadsheet. Imports the "Rocks & Minerals" sheet as inventory items — matching sold items to an already-imported Whatnot sale automatically where possible — and the "Expenses" sheet as expense entries. Safe to re-import the same file: existing items, sales, and expenses are updated in place, never duplicated.
Show Analytics
Whatnot's per-show performance export. Seller menu → Analytics → Shows → pick a date range (max is the last 12 months) → download as CSV. Safe to re-import an overlapping or repeated date range: shows already on file are skipped, never duplicated — see the Show Analytics tab.
Not a seller/buyer export? Or a different report (Ledger, Show Report)?
Use the same import boxes above — any CSV works. You'll get a chance to match each column yourself if we can't detect the format automatically.
Whatnot's monthly PDF statement
Whatnot emails a "Financial Statement" PDF each month with your sales, fees, shipping and payouts already totaled up. Drop it here and this app reads it for you (entirely in your browser) and opens the statement form pre-filled — review it and click Save. You can also type the totals in by hand instead.
All transactions
Uses the filters from the Dashboard tab. Click a column header to sort. Drag a column edge to resize it — your widths are remembered. Category can be changed right in the table for sales, purchases and expenses.
| Date | Type | Description | Category | Revenue | Cost | Net | Notes / options |
|---|
Inventory valuation
Cost tied up in items you haven't sold yet, and items that have sat unsold 90+ days since purchase.
Quick search
Type or scan an Item Number / SKU — the list below filters as you type, and pressing Enter jumps to an exact match. Works with a Bluetooth/USB barcode scanner too (it just types digits and hits Enter).
Add an item
Item Number / SKU is auto-assigned when you save.
All inventory items
Click a column header to sort. Drag a column edge to resize it — your widths are remembered. Minimum sell price and suggested sales price use today's Whatnot fee rate and your markup %. Check items below to export them as a Whatnot bulk-listing CSV.
| Item Number / SKU | Purchase date | Description | Origin | Vendor | Purchase Price | Minimum Sell Price | Suggested sell price | Listed Price | Sale date | Status |
|---|
Bulk-add from Excel/Sheets
Paste rows copied straight from Excel or Google Sheets (tab-separated, one row per item). Column order follows the order set in Settings → Bulk-add column order — currently: .
Vendors
Derived automatically from the Vendor / source field on your inventory items — no separate vendor list to maintain. Total spent and item counts include every item bought from that vendor; total sold and average margin only count items that are sold and linked to a sale entry (see the Inventory tab). Click a column header to sort, drag a column edge to resize it.
| Vendor | Items bought | Total spent | Total sold | Avg. margin (sold & linked) |
|---|
Customers
Derived automatically from the Customer field on your sales — no separate customer list to maintain. Sales with no customer set aren't grouped into this list. Click a column header to sort, drag a column edge to resize it.
| Customer | Orders | Total spent | Avg. order value | Last purchase |
|---|
Add a shipping supply
Track packaging supplies you keep on hand — mailers, boxes, tape, labels — and get flagged when one runs low. Purely manual counts: nothing here is deducted automatically from sales or inventory.
Shipping supplies
Rows at or below their reorder threshold are flagged low stock. Use the +/− buttons for a quick count adjustment, or Edit for everything else. Drag a column edge to resize it — your widths are remembered.
| Name | Category | Quantity on hand | Reorder threshold | Cost/unit | Vendor |
|---|
Find items to sell
Search and check off items you're taking off-platform — a flea market, retail space, or trade show. Only items still In inventory or Listed in shop show up here; already-sold items aren't pickable.
| Item # | Description | Listed price |
|---|
Cart
Prices default to Listed Price but are editable — a flea-market price often differs from your online listing. Uncheck an item on the left, or remove it here, to take it back out.
| Item # | Description | Price ($) |
|---|
No items in the cart yet — check items on the left to add them.
Sale details
This creates one combined sale transaction covering everything in the cart — not a separate sale per item. No Whatnot commission or processing fee is applied, since this sale happened off-platform.
Tax-prep report
Revenue, cost of goods, and expenses broken out by category for a calendar year or a single quarter — a starting point for tax prep, not tax advice.
Costs & expenses by category
For the period selected above — commission/processing fees, shipping, cost of goods, and manual expenses (including Boosts). Use the category filter to include only the categories you pick — everything is included by default.
| Category | Amount |
|---|
Monthly goals
Set a revenue goal, a net-profit goal, or both. Progress toward the current month's goal(s) shows on the Dashboard. Leave a field blank to turn that goal off.
Revenue vs. Boost spend by month
Boost ROI detail
"Revenue per boost $" = that month's total revenue ÷ that month's Boosts spend — a rough gauge, not a causal claim.
| Month | Boost spend | Revenue | Revenue / boost $ |
|---|
Label content
Choose what goes on the label — freeform text, or a scannable barcode for one or more inventory items.
Label preview
Shown at the size it will print. Labels print in plain black on white regardless of your theme.
Custom text
Each line becomes one line of text on the label — style each line independently below. No barcode in this mode.
Text style
Style each line (custom text) or each selected field (from-inventory) independently — never the barcode graphic itself. Remembered for next time.
Label size & quantity
How your data is stored
This app runs entirely on your computer — there is no server and nothing is sent to the internet. Your transactions are saved automatically in this browser's local storage (IndexedDB), tied to this file and this browser.
Auto-save to a file on disk
Chrome and Edge can save your data straight to a file on your computer automatically, a few seconds after each change — a live mirror of what's saved in this browser. IndexedDB (above) stays the source of truth either way.
You'll need to pick the file once each time you reopen the app — browsers don't allow silently remembering file access across sessions, for your security. That's expected, not a bug.
Not auto-saving to a file.
Download a backup
Saves everything — imported transactions and manual expenses — into one JSON file you keep safe (e.g. in a cloud drive).
Restore from a backup
Load a previously downloaded backup file. Existing entries are kept; only new ones from the file are added — nothing is duplicated.
Storage details
Danger zone
Permanently deletes everything stored in this browser. Make sure you've downloaded a backup first.
How profit is calculated
Getting your Whatnot export files
As a seller: Seller Hub → Financials → Ledger → export CSV (or your Weekly Orders Report email attachment). The more columns it includes — commission, processing fees, shipping, cost of goods — the more accurate your net profit will be.
As a buyer: whatnot.com → your profile → Buying → Purchases → "Download Purchase History" → set a date range → Download as CSV. Buyer exports currently only work from a desktop browser, not the mobile app.
Only have the monthly "Financial Statement" PDF Whatnot emails you? That's fine too — use "+ Add monthly statement" in the Transactions or Import tab and type in the numbers. It even has a cleaner fee breakdown than some CSV exports.
Tips
- Re-importing the same file twice won't create duplicates — matching rows are skipped automatically.
- Whatnot purchases default to "Personal" (excluded from profit). Switch any that were inventory buys to "Inventory" in the Transactions tab so they count as cost of goods.
- Everything lives in this browser. Always keep this HTML file in the same place, use the same browser, and download backups periodically.
Terms of Use
Upgrade Access
Loading your plan…
Payments are handled by PayPal. Your plan updates automatically within a few seconds of a completed payment — no need to contact support or wait for anyone to approve it by hand.
Shop name
Shown in the header as "WhatBooks - {Shop Name}". Defaults to "TBD" until you set it.
Theme
Light, dark, or match your system setting.
Customize inventory row color and text by item status
Color-code the Inventory tab's item rows by status. Leave a color unset to keep the default table styling for that status.
Whatnot fee rate
Commission = (price × Base commission %) + (price × Payment processing fee %) + Fixed charge per order. Applied to manual and inventory-sourced entries in a later update. Keep a dated history so old entries can use the rates that were actually in effect then.
| Effective date | Base % | Processing % | Fixed $/order |
|---|
Default seller markup
Used by the Inventory tab's suggested-sales-price calculator (coming in a later update). Just stored for now.
Sale-matching window
When you mark an inventory item "Sold", it's auto-matched to an existing Whatnot sale within this many days of the sell date you enter. Multiple matches show a picker instead of guessing.
Bulk-add column order
When pasting tab-separated rows into the Inventory tab's bulk-add box, this sets which field each column (in paste order) maps to. Each field must be used exactly once.
Custom expense categories
Add your own categories beyond the built-in list. They show up alongside the built-ins in the expense form's Category dropdown, and in the Reports category filter. Removing a built-in category isn't supported — only ones you've added here can be removed.
No custom categories yet — add one above.
Photo uploads
Lets Whatnot listing CSV exports include your saved item photos as Image URL columns.
Photos are only uploaded when exporting inventory items to a Whatnot listing CSV — they aren't stored anywhere else online. Uploaded copies auto-expire after 7 days on the server (your local copies here are permanent). This key is required to enable image uploads in that export; without it, CSV export still works but the Image URL columns are left blank.
Need a refresher?
Replay the quick walkthrough of the app's tabs.