Trading Card Inventory Tracker

Log your trading card collection — Pokémon, MTG, sports cards, and more. Track purchase cost vs. estimated value to see your collection P&L at a glance. 100% private — everything stays in your browser.

Total Cards
0
Total Cost Paid
$0.00
Est. Value
$0.00
Gain / Loss
$0.00
Return
Unique Sets
0

Add a Card

Card Name Set Condition Cost Paid Est. Value P&L
🃏 Add your first card above or import a CSV to start tracking.

How it works

This tracker keeps your entire collection in your browser's localStorage — nothing is uploaded to any server. Your data stays private and persists across page reloads until you clear it.

Add cards manually Type the card name, set, condition, what you paid, and your best estimate of current market value. The tracker does the P&L math for you.
Scan with OCR Snap a photo of your card (or upload an image). Tesseract.js reads the text locally in your browser and pre-fills the card name field — saving typing. You still enter prices by hand.
Import & Export CSV Bring in an existing spreadsheet via CSV (columns: name, set, condition, cost, value). Export your full collection back to CSV or JSON at any time for backup or spreadsheet editing.
P&L formula Gain / Loss = Total Estimated Value − Total Cost Paid. Return % = (Gain / Cost) × 100. Positive = your collection has appreciated; negative = you're underwater vs. what you paid.

Frequently asked questions

Does this tool connect to TCGPlayer, eBay, or any price database?
No — and intentionally so. All price data is what you enter yourself. This design keeps the tool 100% private (no API calls, no tracking), and it means your "estimated value" can be as nuanced as you like: recent sold listing price, PSA graded value, personal sentimental value, or anything else. For live market prices, check TCGPlayer or eBay sold listings and type the number in.
What trading card games does this tracker support?
Any card-based collectible you can name. Pokémon, Magic: The Gathering, Yu-Gi-Oh!, sports cards (baseball, basketball, football), One Piece, Lorcana, Flesh and Blood, Cardfight!! Vanguard, Dragon Ball Super — if it has a name and a price, you can track it here. Use the Set field for the expansion, season, or year.
Will my collection data survive if I close the browser?
Yes. The tracker saves to localStorage on every change, so your data persists across tabs and reloads on the same browser and device. However, clearing your browser's site data or switching to a different device or browser will lose it — export a CSV or JSON backup regularly to protect your records.
How accurate is the OCR card name detection?
The OCR (powered by Tesseract.js, running entirely in your browser) reads printed text well under good lighting. For best results: photograph the card on a dark background, ensure the card name is clearly lit and in focus, and hold the camera parallel to the card. The detected name is just a suggestion — you can edit it freely before adding the card. OCR cannot read holographic or foil text reliably.
What do the condition grades mean?
Mint — flawless, pack-fresh. Near Mint (NM) — minimal handling wear, excellent for grading. Excellent (EX) — light edge wear or whitening but no major damage. Good (GD) — noticeable play wear, creases possible. Played — heavy use, may have bends or marks. Poor — significant damage, primarily for completeness. These grades broadly align with PSA/BGS market convention but are for your personal reference — adjust to match whatever grading system your community uses.