HomeGuidesHow to Fill Out a PDF Form Online
Guide

How to Fill Out a PDF Form Online

3 methods — Papiral, Python, and your browser

PDF forms — job applications, contracts, tax forms, registration sheets — are everywhere. Here are three ways to fill them out: a fast browser-based tool for programmatic filling, a Python script for automation, and a free no-install option using your browser's built-in PDF viewer.

Method 1: Using Papiral (fill form fields by name, in bulk)

Papiral lets you fill AcroForm fields programmatically by providing field names and values as JSON — ideal for filling the same form template with different data across many files.

  1. 1Open your PDF in a browser (Chrome, Firefox) or Adobe Acrobat to find the field names. Right-click a field and look for 'Field Properties' or inspect the form using browser DevTools.
  2. 2Go to the Fill PDF Form tool on Papiral.
  3. 3Upload your PDF (or a ZIP of multiple PDFs with the same form structure).
  4. 4Enter the field names and values as JSON in the Field Values box — e.g. {"Full Name": "Jane Smith", "Email": "jane@example.com"}.
  5. 5Check 'Flatten after filling' to lock the values as static content.
  6. 6Click Process and download the filled PDFs.

To find all field names in a PDF, open it in Chrome, right-click a field, and choose Inspect — the field name appears as the 'name' attribute in the HTML. Or use pypdf's get_form_text_fields() in Python.

Method 2: Python with pypdf

For developers who need to fill forms from a database or automate the process across many files.

  1. 1Install pypdf: pip install pypdf
  2. 2Use the script below to fill form fields and save the result.

python

from pypdf import PdfReader, PdfWriter

reader = PdfReader("form.pdf")
writer = PdfWriter()

# Copy pages
for page in reader.pages:
    writer.add_page(page)

# Copy form fields from reader
writer.clone_reader_document_root(reader)

# Fill fields
writer.update_page_form_field_values(
    writer.pages[0],
    {
        "Full Name": "Jane Smith",
        "Email": "jane@example.com",
        "Date": "2025-01-15",
    }
)

with open("filled_form.pdf", "wb") as f:
    writer.write(f)

Use reader.get_form_text_fields() to list all field names in a PDF before filling — this saves time vs. inspecting the file manually.

Method 3: Fill forms in your browser (no software needed)

  1. 1Open Chrome or Firefox and drag the PDF into a new browser tab.
  2. 2Click on any form field — most modern browsers render interactive PDF form fields natively.
  3. 3Type your values into each field.
  4. 4Press Ctrl+P (Cmd+P on Mac) to open the print dialog.
  5. 5Choose 'Save as PDF' as the destination and save — this flattens your filled values into the document.

Browser-based filling works great for simple forms. For complex forms with calculated fields, dropdowns, or checkboxes, Adobe Acrobat or Papiral handle these more reliably.

Frequently asked questions

How do I find the field names in a PDF form?

Open the PDF in Chrome, right-click a field, and select Inspect. The field name appears as the name attribute in the HTML element. Alternatively, use Python: from pypdf import PdfReader; print(PdfReader('form.pdf').get_form_text_fields()).

What is 'flattening' a form, and should I do it?

Flattening bakes the filled values into the page as static content, making the form fields non-editable. This is usually what you want after filling — it prevents accidental changes and ensures the values print consistently in all PDF viewers.

Can Papiral fill checkboxes and dropdown fields?

Yes. For checkboxes, use 'true' or 'false' as the value. For dropdowns and radio groups, use the option label as the value. Text fields accept any string.

Ready to try the fastest method?

Fill AcroForm fields in a PDF by field name. Provide values as JSON and optionally flatten the form to lock it.

Fill PDF Form — free