How CardIntel prices work
No black boxes. Here’s exactly where the data comes from, how often it updates, and what the numbers on each page actually mean.
From raw listing to published price
Snapshots and verified solds don’t go straight to the page. Each price has to clear three gates — a lone fantasy ask, a graded-sale mix, a wrong-variant feed — and what doesn’t clear is held back with the reason printed on the card.
Card pages disclose whether the headline price comes from a reference snapshot, published market metric, or modeled bridge when coverage is incomplete.
The platform stores daily observations rather than live intraday bars. “Latest” means the latest comparable snapshot, not a real-time market tick.
Deal scores, grading outcomes, and Pokémon sealed EV are scenario tools. They are useful comparisons, not guarantees of execution.
Source layers, update cadence, scoring formulas, and the limits we will not hide.
Use the quick links to jump straight to the section you need. The goal here is not marketing copy; it is a readable contract for what the product means when it shows a number.
Where does CardIntel get its price data?
CardIntel primarily uses scheduled catalog reference snapshots and published market metrics from integrated providers (including TCGPlayer and Cardmarket where applicable). Historical charts may blend archived aggregates or modeled bridge points when daily coverage is incomplete. Completed-sale layers are on the roadmap where provider coverage exists; most headline prices in this release are snapshot-based. Each card page shows the active source, methodology, and as-of timestamp.
Public market coverage is currently live for Pokémon and Magic: The Gathering. Sports and Yu-Gi-Oh! are not exposed as active public markets in this release.
How often are prices updated?
Fresh catalog snapshots and derived fields are updated on scheduled jobs. The “As of” timestamp on each card page shows when that headline price was last refreshed.
Price history is stored on daily dates, not true intraday bars. Older ranges can blend verified snapshots, archived aggregates, or modeled bridge points depending on coverage. Completed-sale-derived history is limited today and is not the default headline source.
How is the Value Score calculated?
The Deal Finder’s Value Score identifies cards priced below their historical averages using three weighted signals:
- 30-day discount (40% weight): How far below the 30-day rolling average the current price sits.
- 90-day discount (30% weight): Same comparison against the 90-day average.
- Discount from 30-day high (30% weight): How far below the highest price in the last 30 days.
The default Deal Finder filter starts at 5%, but the UI can be lowered to 3%. Higher scores mean a stronger blend of discount vs 30-day average, 90-day average, and 30-day high. The Highest 30D Activity sort uses observed 30-day activity volume, not live intraday trades.
How does the Set EV calculator work?
Set EV is a modeled estimate for comparing sealed opening value versus buying singles. The formula is:
EV = Σ (card price × pull rate)
The live sealed model currently applies to standard Pokémon booster packs only. Pull rates follow a simplified Pokémon distribution: 1 guaranteed rare (or better), 3 uncommons, and 6 commons per 10-card pack. The rate for each individual card is normalized by the count of cards at its rarity tier, so the output should be read as a modeled scenario rather than observed sealed-opening odds.
CardIntel does not publish MTG sealed EV yet. Draft, play, collector, gift, and promo products use materially different slot structures, so showing one generic MTG box model would be misleading.
How does the Grading ROI calculator work?
The Grading ROI tool estimates whether sending a card for professional grading (PSA, BGS, or CGC) will increase its net value. It factors in:
- Your raw card value estimate
- Grading service fees (based on current published pricing tiers)
- Shipping and insurance costs
- A grade probability ladder based on your condition assumption (mint, near-mint, or played)
The output includes a modeled ROI percentage, upside/downside scenarios, and the largest modeled grade bucket. It is a scenario tool, not a card-specific grading guarantee.
How the market indexes are built
The CardIntel TCG, Pokémon, and MTG Market Indexes are daily, market-cap-weighted benchmark baskets rebuilt from verified PriceHistory rows. Each headline index tracks a whole market; narrower baskets (blue-chip, vintage, Charizard, and MTG type cohorts) are cut from the same universe. Values published on /market-index and the downloadable CSV come from one shared series builder — no page recomputes prices on its own.
- Composition & weighting. Every card with a positive market value is included and weighted by that market value, so the index reflects where capital actually sits rather than a simple average.
- p99 weight cap.Each card’s weight is capped at the per-category 99th-percentile market value. Without the cap a single ultra-expensive card can dominate a basket — one $48k card once carried three-quarters of the Pokémon numerator, so one reprice moved the index by hundreds of percent. Capping keeps any one card from hijacking the benchmark.
- 8× anchor anomaly filter.Each card’s first known price in the lookback is its anchor. A zero-volume daily snapshot that reprices a card by more than 8× (up or down) versus that anchor is dropped as unreliable; the previous value keeps forward-filling and the card only re-levels once the stale anchor ages out of the window. A move backed by real volume is always kept.
- 90-day seeding & forward-fill.The builder reads prices from up to 90 days before the visible window so each card’s last known price seeds day one instead of popping into the basket mid-series. Between observations, a card’s last verified price is forward-filled across every calendar day until the next real snapshot.
- Rebuild cadence.The precomputed baskets refresh once daily (04:45 UTC) from verified history, so the public pages stay fast and every published point is auditable. “Latest” means the most recent daily snapshot, not a live tick.
First-party daily MTG collection paused between April 28 – May 30, 2026, then resumed May 31, 2026. On July 7, 2026 the window was backfilled with MTGJSON’s TCGplayer daily retail aggregates (2.7M rows, 99.9% of tracked MTG cards), so charts and indexes show real daily variance across the window. Backfilled points carry a distinct historical-aggregate source label and confidence instead of being passed off as first-party snapshots.
Free to cite with attribution to CardIntel (cardintel.io).
What are the known limitations?
We believe in transparency. Here are the main caveats:
- Prices are daily-dated observations, not live intraday ticks. Most headline prices come from reference snapshots; some historical ranges use modeled bridge points when daily coverage is missing. Activity rankings may use volume proxy fields, not verified sale counts.
- Grading multipliers are estimates based on general market patterns, not card-specific assessments.
- Set EV pull rates are modeled from rarity-slot assumptions for standard Pokémon booster packs. Special products (ETBs, tins, promos) behave differently, and MTG sealed EV is intentionally withheld until product-specific models exist.
- Marketplace fee estimates in the Sell Calculator are based on reference rates as of March 2026 and may change.