ClientPDF
running locally in this tab — nothing uploaded

Open DevTools.
Flatten the form fields.
Watch nothing get sent anywhere.

Turn a filled-out PDF form into permanent, non-editable content — text fields, checkboxes, radio buttons, dropdowns, and option lists all get baked into the page — all inside this tab. Zero network requests after the page loads, same rule as every other tool here. Check the Network tab yourself.

Drop one PDF here or click to browse

One file at a time · stays on this device

    Why trust this tool

    0 network requests since page load · verified live, not our word for it

    No accounts

    No signup, no email, no watermark. Use it and close the tab.

    No limits (for now)

    Flatten forms as big as your device's memory allows. No artificial caps.

    Editing metadata or cropping pages too? Both live too.

    Read and edit a PDF's Title, Author, and Keywords, or trim the visible margins on every page — same rule: everything stays local. Leave your email and we'll let you know about a Pro batch mode.

    Making a filled form permanent

    Flatten Form Fields takes an AcroForm's text fields, checkboxes, radio buttons, dropdowns, and option lists — whatever values they currently hold — and bakes them into the page as permanent, non-interactive content via pdf-lib's form.flatten(). The result looks identical to the filled form but can no longer be edited field-by-field; it's a plain page from that point on. A PDF with no form fields at all is detected before processing and reported as a no-op rather than silently handing back a byte-identical download that looks like it did something.

    This is the natural next step after Fill Form Fields once you're done editing and want to lock the values in. If the form's fields were already behaving strangely before you got here — jumping between the wrong pages, or refusing input — that's often a side effect of an earlier split or reorder operation on the same file; here's why that happens and what to check.