Free online tool

HTML to ODT converter

Type, paste, or drop HTML and generate a valid OpenDocument Text file — instantly, in your browser.

Nothing is sent to any server
🖥️

Best on a larger screen

This tool needs a wider display for the side-by-side input and preview panes. Please come back on a desktop or laptop browser to use it.

Drop HTML file to load

The generated .odt file displays correctly in LibreOffice, OnlyOffice, Collabora, MS Word, and other ODF applications. The preview shown here is a simplified rendering that may not match those applications exactly.

Saved files this session

    Filenames are as requested — your browser may add (1), (2), etc. to avoid overwriting existing files in your downloads folder.

    How it works

    Private, fast, free

    Conversion runs entirely in your browser — no server, no account, no file size limits.

    🔒 Fully private

    Your HTML never leaves your browser. No network requests are made during conversion. Works offline after the page loads.

    ⚡ Instant conversion

    Conversion runs in milliseconds using odf-kit's pure JavaScript library. No waiting for upload or server processing.

    📋 What is supported

    Headings h1–h6, paragraphs with text alignment, bold, italic, underline, strikethrough, subscript, superscript, inline code, highlight (<mark>), links, bullet and numbered lists with nesting, tables with header cells and cell background colors, blockquotes, code blocks, horizontal rules, line breaks, images (with width/height/alt), and figures with captions. Inline CSS for color, font-size, font-family, font-weight, font-style, and text-decoration.

    🆓 Free, always

    No character limits, no conversions per day, no sign-up required. Powered by open source odf-kit.

    🛡️ Spec-compliant

    Output passes the OASIS ODF validator without errors or warnings — enforced on every commit by CI. Round-trips cleanly through LibreOffice, OnlyOffice, Collabora, and MS Word.

    Need HTML → ODT in your app?

    odf-kit is a free, open source JavaScript library. htmlToOdt() converts any HTML string to a valid .odt file in Node.js or the browser. No server, no LibreOffice.

    View documentation npm install odf-kit
    // The same code powering this tool import { htmlToOdt } from "odf-kit"; const html = `<h1>Report</h1><p>Content here.</p>`; const bytes = await htmlToOdt(html, { pageFormat: "A4", }); // bytes → Uint8Array, save as .odt file
    ← landing page
    /odf-kit/

    More odf-kit tools & guides

    Tools

    Generate

    Read

    Guides

    Generation

    Templates

    Conversion

    Reference