Life LogMy stuff

Trade Calculator

Both sides of a trade, priced card by card, with sources and dates.

Reading the card list…

How the numbers are made, and where they come from

How the numbers are made

Prices

Each line is priced at its own printing and finish, from Scryfall's printing file (read October 22, 2026) and refreshed from Scryfall once a day for the printings in the trade while the page is open. Every total says which price it uses and as of when.

  • TCGplayer market price, US dollars (the default): TCGplayer's figure from recent sales of that printing and finish, as Scryfall publishes it, for nonfoil, foil and etched foil. A finish with no price stays without one; the page never borrows another finish's price.
  • Cardmarket price, euros: Scryfall's Cardmarket price. This data has it for nonfoil only, so foil lines show no price in euros.
  • Not offered: TCGplayer's low and mid prices, which aren't in Scryfall's data. Card Kingdom's buylist is offered only as MTGJSON publishes it (quick exit, below): the site never reads Card Kingdom's own store, whose terms ask for written consent before software uses it.

each copy = price of the printing and finish x condition share, rounded to the cent

line = each copy x copies; side total = the sum of its lines with a price

difference = get total - give total; share = difference / give total

Rounding each copy to the cent first means the lines shown always add up to the side's total, and the copied summary's each and line figures agree.

A line with no price is listed, counted as cards, and left out of its side's total, and the totals say how many. The Near Mint total beside each side is the same sum with every condition share at 100%. A card added by name, or from a list line with no set, starts at its cheapest printing in the line's finish by the site's one price rule (a printing you can play in a paper game, serialized ones aside), English first: the printing a deck page prices a card at when the deck names none, so a card costs the same here as there. A printing in another language is used only when no English one has a price, and the line says the language. A line with a set and no number starts at that set's cheapest such printing. Pick another printing from the line's list at any time.

Asked for and not found. A list line that names a printing or finish this site's data doesn't have (a set code it doesn't know, a collector number that set doesn't have for the card, a finish that printing isn't made in) is still added, and the line says what was asked and what it shows instead; so does a shared line whose printing isn't in this copy's data. A collector number written with a star, 54★, is the same as 54*. Lists paste one card a line from most apps, with or without their section headers (Deck, Sideboard, Commander), a finish or condition at the end or before the set code; a CSV export (Deckbox, ManaBox, Moxfield and others) is read by the same importer Collection uses.

The condition table

Five grades, TCGplayer's: NM, LP, MP, HP and DMG. Each line's price is the Near Mint price times its grade's share. The starting table is the middle of each range in TCG Price Lookup's condition guide (2026): NM 100%, LP 80 to 90%, MP 60 to 70%, HP 40 to 50%, DMG 20 to 30%, so 100, 85, 65, 45 and 25. Deckbox's guide publishes wider ranges on a different scale (70 to 90% for lightly played, 60 to 80% played, 40 to 70% heavily played). Condition discounts vary by card and by who is buying, so the table is yours to change, or to switch off for Near Mint prices throughout. It is saved with each trade and travels in its share link.

Cash on either side

Either side can add cash, in the trade's own currency (US dollars, or euros for a trade priced in euros), to the cent. Cash joins its side's total as typed: no condition share and no side percentage touches it. An empty box, a negative number or anything that isn't a number counts as no cash, and the box is tidied to the cent when you leave it; a side takes at most 10 million in its currency. Switching the trade's currency takes the typed cash out, since dollars aren't euros, and a notice says what it was with a button to put the same figures back.

side total = (the sum of its priced lines x the side's percentage, rounded to the cent) + its cash

difference = get total - give total; share = difference / give total, both totals with their cash

Cash shows in each side's total (beside the cards' own total), the difference and its share, the bar, the dock, the copied summary and the totals read to screen readers, and the totals My Stuff keeps include it. A share link carries both sides' cash, and seeing a shared trade from your own side swaps each side's cash with its cards. Applying a trade to your collection moves cards only: cash isn't a card, so nothing records it there.

The bar

The bar draws the two totals side by side: each side's width is its share of both totals added together. It is a picture of the two numbers, nothing more.

Your Collection

My cards lists the paper cards in your Collection's binders (Arena and Magic Online binders and proxies are left out); my wishlist lists the cards on your wishlists. Each tap adds one copy with its printing, finish and condition, and “done” closes the list. Collection uses Cardmarket's seven conditions and the trade uses TCGplayer's five; they are matched the way the site's TCGplayer export matches them: Mint and Near Mint as NM, Excellent and Good as LP, Lightly Played as MP, Played as HP, Poor as DMG.

Apply to my collection takes the cards you give out of your paper binders, matching the same printing, finish and condition first, then the same card in any printing; puts the cards you get into the binder you pick (NM as Near Mint, LP as Excellent, MP as Lightly Played, HP as Played, DMG as Poor); and, if you tick it, takes them off your wishlists. Cards you give that aren't in your binders are listed and left alone. The dialog lists exactly which copies come out (printing, finish, condition and binder, and which differ from the trade line) and which go in, before anything moves. Undo reverses the trade's own moves and nothing else: copies it took out go back, copies it put in come out again, and anything changed since, on this page or in another tab, stays. When copies it put in have been moved or sold since, undo leaves the rest of the collection alone and lists them.

My cards lets a trade give more copies than the collection holds (it's a calculator, and a binder can be out of date); the list and a note say when it does.

Saving and sharing

A trade saves in this browser once it has a card, under its own key, and shows on My Stuff with the totals it had when it was last saved. A share link carries the trade in the address itself, compressed: the title, each card's name, count, printing, finish and condition, the price field, your condition table, each side's terms and each side's cash. Nothing is uploaded. Whoever opens it sees it priced with the prices on their copy of the site that day, which can differ from yours.

A trade's sides are the sender's. The share dialog takes an optional name, which goes in the link, and whoever opens it sees the sides labeled as that person's ("Chad gives", "Chad gets") with a button to see it from their own side, which swaps the two. It saves the way it's shown. A link carries every card, so a long trade makes a long link (a few thousand characters for a hundred lines a side); the dialog gives its length past 2,000 characters, since some messaging apps and email programs cut long links short.

Wishlists and trade binders from a link. A link from Collection's share my trade binder or share my wishlist opens here as a list under the shared-link banner: whose it is, not saved here. Each card shows its printing (the set code and collector number the link names; a card named without one says “any printing”), finish, condition, language and count, and, when the link has them, its price on this copy of the site and the sender's note. With a collection in this browser, their cards on your wishlists say how many you want, and the cards on their wishlist say how many you have and how many of those you marked for trade.

Each + puts one copy straight into a new trade, saved like any other, and says so; the line at the foot counts what is in it, and “open the trade” goes there (Back returns to the list, and the list picks up the same trade). A card from their binder goes in “you get” at the printing, finish and condition the link names, the condition matched to the trade's five grades as above, and no more copies than the link lists. A card from their wishlist goes in “you give” as one of your own copies: the printing the wishlist names first, then copies you marked for trade, then the same finish; past your copies, at the printing the wishlist names. Start a trade with these opens the trade with the copies you picked; with none picked, with the matches, as many copies as both sides have (theirs on your wishlists in you get, yours on their wishlist in you give); with no matches either, with every card in the link. The trade page says which. Save a copy keeps the list in this browser, under saved trades and in the backup; it stays as it was when the sender's cards change.

Totals are also announced to screen readers, politely and a moment after the last change; the saved-in-this-browser line is left quiet.

Camera. Intake's camera reader (camread.js) reads the set code and collector number on each card from the phone's camera in this browser; frames never leave the device. A sure read adds that exact printing to the side or list it was opened for; a read it isn't sure of waits for you to confirm or type it.

Every store's price

Beside the TCGplayer market price the site uses everywhere (from Scryfall), the card page and Collection show store prices from MTGJSON's AllPrices (MIT license), dated: TCGplayer retail as MTGJSON reads it, Card Kingdom's asking price and its cash buylist, Mana Pool's asking price and Cardmarket's price in euros, for the normal and the foil finish (etched has none). MTGJSON gathers these from the stores' public feeds, and the stores' own terms for that data aren't published; the site never reads a store's own pages. Card Kingdom pays is its cash buy price divided by the market price of the same printing and finish. The flag shows when the highest of TCGplayer retail, Card Kingdom and Mana Pool is more than 1.5 times the lowest. The stores' prices are for near mint copies and are shown as they are; only Collection's value by condition, off unless you switch it on, multiplies them by a condition share.

Valuation terms and friends

Each side is valued at market, replacement (the lowest store asking price) or quick exit (Card Kingdom's cash buylist), then the condition table, then that side's percentage, rounded to the cent. A friend's shared lists are matched line by line with your paper copies on hand and your wishlists, each of your copies counted once, priced at the market price of the printing named. Friends kept from links stay in this browser.

About Trade Calculator

What it does

  • Two sides, you give and you get. Each card with its exact printing (set and number), finish (nonfoil, foil, etched), condition (NM, LP, MP, HP, DMG) and count.
  • Prices from the site's price data: TCGplayer market price in US dollars via Scryfall, or Cardmarket's price in euros, with the date on every total and a refresh from Scryfall each day you use it.
  • A condition table you can edit, starting from a published one (the middle of TCG Price Lookup's ranges), and the Near Mint totals beside the adjusted ones.
  • Fast on a phone: type a name, import a list from any app, or tap cards from your Collection and your wishlists.
  • Totals and the difference in money and as a share of what you give, with a bar that draws the two totals side by side.
  • Trades save in this browser and show on My Stuff. Share a link that carries both lists (nothing is uploaded), copy a plain-text summary, and apply a trade to your Collection with undo.
  • Wishlists and trade binders from a link: a friend's cards, matched with your own collection, each one a tap into a new trade on the right side, or a whole trade from what matches in one step.
  • Cash on either side, counted in the totals and carried in the share link.
  • Ready for the shop: saved once, it prices trades with no signal, from prices it dates.

Why

Trading is where players reach for a price app at the table, and many trade tools sit behind an account or an app store download. This one is free, works in any browser, reads your own collection, and shows its sums: which price, which printing, which condition table, as of when. Whether a trade is worth making is yours to decide.

Asked for by players

  • A trade calculator that saves trades and lets you look at them again. shipped
  • Share a trade with the other player as a link. shipped
  • Move traded cards in and out of the collection in one step. shipped
  • Scan cards into a trade with the phone camera. shipped

On the list because players asked for them in public feature requests and forums, September 2026.

Changelog

  • "Ready for the shop" in My Stuff now saves Trade's page and scripts with the prices, so a trade can be priced in a store with no signal.
  • A Camera button on each side adds each sure read at its exact printing. The totals count cards with no price ("plus 2 cards with no price"), and a line with no price says why: offline, or the network not answering. On a phone each card is one line that opens for its options, and the give, get and difference bar stays at the bottom while you type. What an add did is said under its own add box.
  • Works with no signal at a store once My Stuff's Ready for the shop has saved the card list and today's prices, which says the day they're from; a shortcut on the installed app's icon.
  • Cash on either side of a trade: in the totals, the difference, the share link and the copied summary.
  • Value each side at market, replacement or quick exit, at a percentage you set, with flags for cards no store buys and for prices that disagree; match a friend's shared lists with your collection and keep friends without an account.
  • Shared wishlists and trade binders: a link from Collection opens here as a list, matched with your own collection. Each + puts one copy in a new trade on the right side, "start a trade with these" puts in what matches, and "save a copy" keeps the list. Applying a trade takes the copies you give off Collection's "for trade" mark first.
  • New: Trade Calculator. Two sides priced card by card (printing, finish, condition, count) from TCGplayer market prices via Scryfall or Cardmarket prices in euros, dated. An editable condition table that starts from a published one. Add cards by typing, pasting a list, or tapping them in your Collection and wants lists. Totals, the difference in money and as a share of the give total, saved trades on My Stuff, share links with both lists, a plain-text summary, and apply to Collection with undo.