keptlocal
Files never leave your browser

Fill PDF Form Online — No Upload, Free

Fill a PDF form without uploading — no signup, no account, no watermark. Detects all form fields automatically. Text, checkboxes, dropdowns, and radio buttons all supported. Optionally flatten to lock values. Files never leave your device.

Drop a PDF form here, or

PDF with fillable form fields. Files never leave your browser.

Upload a PDF with fillable form fields to get started.

How to fill a PDF form

  1. Upload your PDF form. Drop the file onto the upload area or click to browse. The tool reads all form fields automatically — text inputs, checkboxes, radio buttons, and dropdowns will all appear.
  2. Fill in the fields. Each detected field is displayed with its name and an appropriate input control. Type text, check boxes, or select options as needed.
  3. Choose whether to flatten. Flattening bakes the entered values into the page content and removes the interactive fields, preventing the recipient from changing the values. Leave it enabled unless you specifically want the form to stay editable after downloading.
  4. Click Fill & download PDF. The filled form downloads immediately with "-filled" added to the filename.

Everything runs in your browser using pdf-lib. Your PDF and the data you enter never leave your device.

When to fill a PDF form online

  • PDF forms without desktop software. If you do not have Adobe Acrobat or a PDF editor installed, filling forms in a browser is the simplest option. This tool works directly in Chrome, Firefox, Safari, or Edge — no installation needed.
  • Filling forms on shared or managed devices. On a work computer where you cannot install software, or a shared device like a library computer or school machine, a browser-based tool lets you fill and download without leaving anything installed.
  • Quick one-off forms. For government forms, job applications, tax worksheets, and other single-use forms, opening a dedicated app and navigating its interface takes longer than uploading and filling directly.
  • Forms with sensitive information. When the form contains private data — tax details, medical history, legal information, personal identification — filling it in a tool that processes locally means the values you type are never sent to any server. This tool is built for exactly this case.
  • Filling forms before sending. The most common workflow: fill the form, flatten it (so values cannot be changed), and email or upload the completed document.

Types of form fields this tool handles

PDF forms use the AcroForm specification, which defines several field types. This tool handles the most common ones:

  • Text fields. Single-line and multiline text inputs. The tool shows multiline fields as resizable text areas and single-line fields as regular inputs. You can type any text value.
  • Checkboxes. Boolean fields that can be checked or unchecked. Each checkbox is shown with its field name and a toggle.
  • Radio buttons. Groups where one option from several can be selected. The tool shows all available options and lets you choose one.
  • Dropdowns. Select fields with a fixed list of options. The tool renders these as a standard dropdown with all available choices.

Signature fields and button fields are read-only in this tool — they are shown but cannot be filled. For signing documents, use the Sign PDF tool, which lets you draw or type a signature and place it on the page.

What flattening does to a filled form

When you fill a PDF form and leave it interactive, the entered values are stored in the AcroForm layer — a set of annotations and form objects that sit on top of the page content. A recipient with a PDF editor can open the form and change every field.

Flattening takes each field's current value and draws it permanently onto the page as static content. The interactive AcroForm layer is then removed entirely. The filled PDF looks identical — the values are visible — but the fields no longer exist as editable elements.

This is the right choice when you are submitting a form to someone else and want the values locked. It prevents accidental or intentional modification of what you submitted. The one downside is that a flattened form cannot be re-edited — if you need to change values, go back to the original PDF and re-fill it.

How pdf-lib reads and writes form fields

pdf-lib is a JavaScript library for reading and manipulating PDFs, running entirely in the browser via WebAssembly-compatible JavaScript. When you upload a PDF, the tool calls form.getFields() to retrieve all AcroForm field objects from the document structure.

Each field object exposes its type (PDFTextField, PDFCheckBox, PDFRadioGroup, PDFDropdown), its current value, and in the case of radio groups and dropdowns, the available options. The tool builds a dynamic form UI from this data.

When you click "Fill & download PDF", the tool loads the original PDF bytes again and applies your values using typed accessors: form.getTextField('name').setText('value') for text fields, form.getCheckBox('name').check() for checkboxes, and so on. If flattening is enabled, form.flatten() converts all fields to static page content before saving.

Limits and what to expect

  • The PDF must have actual form fields. Scanned forms, forms that look like fillable but are just images of printed forms, and flat PDFs with no AcroForm layer will not work — the tool will report "no fillable fields found".
  • Password-protected PDFs. Encrypted PDFs that require a password to open cannot be read by this tool. Use the Unlock PDF tool first to remove the password, then fill the form.
  • Signature fields. Digital signature fields (PAdES/PKCS#7 cryptographic signatures) cannot be filled or applied with this tool. For a visual signature image, use the Sign PDF tool separately.
  • Complex calculated fields. Some PDF forms use JavaScript to auto-populate fields based on other values (for example, calculating totals). Browser-based filling does not run embedded PDF JavaScript, so calculated fields may remain blank or show their previous value after filling. Fill them manually.
  • Appearance fidelity. pdf-lib generates standard appearance streams for filled fields. Most PDF viewers render these correctly. Highly customised field appearances (unusual fonts, non-standard widgets) may look slightly different from the original form's styling.

Privacy: what happens to your data

Your PDF and everything you type into the form fields are processed entirely in browser memory by pdf-lib running locally. The completed form is created in memory and downloaded directly to your device. No data leaves your device at any point — not the PDF contents, not the values you enter, nothing.

This is especially important for forms containing sensitive information: tax identification numbers, dates of birth, medical history, bank account details, legal declarations. Local processing means none of this passes through a third-party server, is logged, or is retained anywhere.

Frequently asked questions

Are my files uploaded to a server?
No. Everything runs in your browser using pdf-lib. Your PDF and the values you enter never leave your device — open DevTools → Network while filling to confirm zero upload requests.
What types of form fields are supported?
Text fields (single-line and multiline), checkboxes, radio button groups, and dropdowns. Signature fields and button fields are shown but cannot be filled — use the Sign PDF tool for signatures.
What does 'flatten after filling' do?
Flattening converts each field's value to static page content and removes the interactive form layer. The PDF looks identical but the fields can no longer be edited. This is recommended before sending completed forms.
What if no fields are detected?
The PDF may not contain actual fillable form fields — it might be a scanned form (an image of a form), a flat PDF, or a form where the fields are already flattened. This tool only works with PDFs that contain AcroForm fields.
Can I fill a password-protected PDF?
No. Encrypted PDFs cannot be read or modified. Use the Unlock PDF tool to remove the password first, then fill the form.
Will calculated fields (auto-totals) work?
Probably not. Some PDF forms use embedded JavaScript to auto-calculate fields based on other values. Browser-based filling does not run PDF JavaScript, so calculated fields will remain empty or show their previous value. Fill them manually.