Turning AI-Generated HTML Slides into a PPTX: A Practical Workflow (and Its Limits) A developer outlined a workflow for converting AI-generated HTML slide decks into PowerPoint files, recommending print-friendly CSS with fixed 1280×720 slide sections and a browser-based converter such as SlideBeaver for static PPTX exports. The approach produces faithful but non-editable slides, so decks requiring heavy text editing should instead be rebuilt with python-pptx or PptxGenJS, and the developer advises prompting models for fixed-size, system-font, JavaScript-free HTML up front to avoid font, overflow and missing-image problems. AI assistants have become surprisingly good at producing slide decks as a single HTML file. Ask Claude or ChatGPT for "a 10-slide presentation on our Q4 roadmap" and you often get a self-contained page with sections, CSS and maybe a little JavaScript for navigation. It looks great in a browser. Then someone in the meeting says, "Can you send me the PowerPoint?" This post walks through how I handle that hand-off, what can go wrong, and where the limits are. The problem is that most organisations still run on .pptx . Decks get forwarded, opened on locked-down laptops and dropped into shared drives where HTML files look suspicious. The quickest route is Ctrl+P → Save as PDF with a page size matching your slide aspect ratio. It works, but: @page and break-after: page need care. Still, adding print styles is worth doing anyway: @page { size: 1280px 720px; margin: 0; } section.slide { width: 1280px; height: 720px; break-after: page; } If you need truly editable text boxes and shapes, you can generate the deck programmatically. This gives full control, but it means maintaining a second rendering of the same content. Every layout change in HTML must be mirrored in code. For one-off decks, that is rarely worth it. For most "just send me the PowerPoint" situations, I use a browser-based converter. SlideBeaver https://www.html-to-pptx.com/ opens the HTML deck locally, shows a preview of each slide, lets me make small visual adjustments to text and spacing, and exports a PPTX. Everything runs in the browser, so the deck is not uploaded anywhere. The important caveat is that the output is a static PPTX. Each slide renders the way it looked in the preview, which is what you want for sharing and presenting. It is not a conversion into native, fully editable PowerPoint objects, and it does not embed your web fonts. If the recipient needs to rewrite every bullet in PowerPoint, Option 2 is the honest answer. Fonts look different. Web fonts loaded from a CDN may not have finished loading when the slide is captured. Self-host the font or wait for document.fonts.ready before you export. Slides overflow. AI-generated decks often assume a scrolling page. Constrain each slide to a fixed box, such as 1280×720, and use overflow: hidden while you debug. Interactive bits disappear. Accordions, hover states and canvas animations become a single frame. Decide which state you want to capture before exporting. Images are missing. Relative paths break if you open only the HTML file. Inline small images as data URIs or keep the folder structure intact. You can save yourself time by asking the model for a stricter structure up front: Create a 16:9 HTML slide deck. Each slide is a