Digital playtesting means getting your deck into Tabletop Simulator (TTS) — but the custom deck format has specific rules that aren't obvious the first time. Here's exactly what TTS expects.
TTS doesn't take individual card images for a custom deck. Instead, you build one sheet image — a grid of every card face, arranged left-to-right, top-to-bottom — plus one shared back image. TTS slices the sheet into individual cards internally based on the grid dimensions you tell it.
| Requirement | Value |
|---|---|
| Default grid | 10 columns × 7 rows (70 cards per sheet) — configurable |
| Maximum sheet dimensions | 4096 × 4096 px (general rule of thumb) |
| Color mode | RGB only — CMYK will not work |
| File format | PNG or JPG |
| Hidden-card slot | The last image position on the sheet is used as the "hidden" face shown when a card is in a hand or otherwise face-down — unless you enable "Back is Hidden," which uses the shared back image for that instead |
A 10×7 grid holds 70 cards. If your deck is larger, you need multiple sheets — build each sheet as its own Custom Deck object in TTS, then combine them into one stack by dragging one deck onto another (TTS merges them automatically). Keep track of which sheet used which hidden-slot convention if you're mixing "last cell" and "Back is Hidden" approaches — mixing conventions across sheets in the same deck is the second most common setup mistake after the CMYK issue above.
Cardwright exports Tabletop Simulator sheets directly from your deck data: correct grid, RGB, kept under the 4096 px cap, hidden-card slot in the last cell, plus a separate back image — with a README that tells you the exact Width/Height numbers to type into TTS. A Pro feature; free tier covers every print export.