🔢 DeckMedic · Data Engine · Tool 1 of 2
AI-generated financial tables are inconsistent. Row 1 says "$10.00", Row 2 says "10", Row 3 says "$10.001". Your MD will kill you for it. This tool enforces uniform decimal precision across every table cell in your deck — in seconds, with a before/after audit trail.
Zero upload
File stays on your device
Instant
No server round-trip
Free
No sign-up required
Tables only
Text outside tables untouched
Target decimal places
Selected: force 2 decimals on all numbers found in table cells. Currency symbols, commas, and % signs are preserved.
Drop your .pptx here
or click to browse
Runs 100% in your browser — file never leaves your device
← drag handle to compare · left = before · right = after →
Unzip + parse
The PPTX is opened as a ZIP archive. Every slide XML file (ppt/slides/slideN.xml) is read as a UTF-8 string.
Locate all tables
The tool finds every <a:tbl> (table) element within each slide. Each table is scanned row by row, cell by cell.
Identify numeric cells
Each cell's text content is extracted and tested against a strict pattern: optional currency prefix, numeric value, optional % suffix. Cells containing labels, dates, or mixed text are skipped.
Apply toFixed()
Numeric cells are reformatted using JavaScript's toFixed(n) — the currency prefix and % suffix are preserved. The change is recorded in the audit log.
Rebuild and download
The patched XML is written back into the ZIP, and a clean PPTX is generated for download with the _decimals_fixed.pptx suffix.
Text outside tables
Numbers in text boxes, titles, and body text are not touched — only <a:tbl> table cells.
Header rows & labels
If a cell contains any non-numeric text ("Revenue", "Q3", "FY25 E"), it is left unchanged.
Mixed-content cells
"Revenue: 10.5M" fails the pure-number test and is skipped entirely.
4-digit years (1900–2099)
"2024", "2025", "2030" — year values in column headers are detected and preserved as-is.
Zero upload
No file ever sent to a server
Works offline
After first page load
No telemetry
File data never logged
GDPR safe
No data processor needed
| Method | Decimal Normalizer | Manual Edit | VBA Macro |
|---|---|---|---|
| Processes all slides at once | ✅ Yes | ❌ One cell at a time | ✅ Yes |
| Before/after audit trail | ✅ Full log | ❌ None | ❌ No log |
| Preserves currency symbols | ✅ Yes | ✅ Manual | ⚠️ Depends on macro |
| Zero install | ✅ Browser-based | ✅ Built into PPT | ❌ Requires PowerPoint + VBA |
| Works on Mac / Linux | ✅ Yes | ✅ Yes | ❌ Windows only |
| Handles 50-slide deck | ✅ Seconds | ❌ Hours | ✅ Seconds |
🏦
Pitch books and CIM documents require strict house style: 1 decimal for multiples, 2 for per-share values. AI-generated tables violate this constantly. One run before printing fixes every table in the deck.
📊
Initiation reports and earnings models live and die by consistent decimal formatting. Mixed precision reads as sloppy to institutional clients and portfolio managers reviewing the stack.
🏢
Client-facing board decks, QBR summaries, and market sizing models go through strict QA. A number formatted as "2.5" next to "2.50" next to "3" on the same table is a last-minute fire drill — this eliminates it.