Home / Fill PDF form

Fill PDF form

Fill in a PDF form by typing into its fields, without the file leaving your computer.

Open in the app The app opens with this tool already selected. Your PDF is not uploaded anywhere.

How it works

Open the PDF and you see its fields in two ways at once: highlighted on the page and in a list in reading order, with the type of each one. Type in either place (on a phone, in the list) and the values stay in step: single-line and multi-line text, checkboxes, choose-one options, drop-down lists and selection lists. Before saving, the tool warns about required fields that are still empty and about values the form does not accept.

When you apply, the values are written into the form itself, so any PDF reader shows them and they can be edited again later. If you prefer to fix them, you can flatten the form: the fields become page content and can no longer be changed. You also get a notice if the file is signed, certified or encrypted, and what happens in each case.

The values are added at the end of the file as an incremental update: the original content is not touched and any signatures it already had stay valid for the version that was signed. Check the result in your usual PDF reader before you send it: the page tells you clearly what was done and what was not.

What is not preserved, and limits

  • The JavaScript of the form is NOT run: calculated totals, number or date formats and custom checks do not happen. The tool lists the fields with a calculation or a format by name; type their final values yourself.
  • XFA forms are not supported. A dynamic XFA form (with no normal PDF fields) cannot be filled here: open it in Adobe Acrobat or Reader. A hybrid one is filled through its normal fields, and you can remove its XFA data so every reader uses those fields; the XFA layout is lost for good in the result.
  • Signature fields cannot be filled: use the Sign tool. Buttons and barcodes are not run or drawn. A file that is already signed can be filled (the earlier signature stays valid for the version that was signed), but readers report that the document changed after signing.
  • A file with a certification signature that allows no changes at all is not filled: the tool says so and touches nothing. If the certification allows filling fields it is filled, but it cannot be flattened.
  • Flattening is irreversible in the result file, and earlier revisions of the file stay inside it. Always keep the original: the result is a new file.
  • The look of every field you fill is drawn by this tool (Helvetica-style letters, simple borders), not by the producer of the form, and other readers may draw it slightly differently from the preview. Rich text fields are filled as plain text.
  • Characters outside Latin-1 use the font bundled with the tool (Noto Sans, Latin set); a character that font does not have is refused and the page tells you which one, changing nothing. There is no glyph shaping or right-to-left layout.
  • A password-protected PDF can be filled (the page asks for the password and it is used only in your browser), but the result is saved WITHOUT a password; you can protect it again with Protect PDF. A password field of the form is drawn as dots and its value is NOT stored in the file.
  • The result has been checked with pikepdf and qpdf (structure and values), poppler (pdftoppm, pdftotext), Ghostscript, PDFium and pdfsig (signatures); it has not been tried in Adobe Acrobat or Reader, and only with forms generated for the tests, not with a collection of real-world forms from other programs.
  • If the PDF is a flat page with no fields there is nothing to fill here: use Annotate PDF to type text anywhere on the page.
  • Everything happens in your device's memory and nothing leaves it. Very large files (more than about 100-150 MB in total) may fail, especially on phones; a form with thousands of fields can be filled, but the list and the page are easier on a larger screen.

Why it is different

This tool works inside your browser. The file you choose stays on your device and is not sent to any server. That is why you do not need an account or an email to use it.

Other tools