Open a PDF
Home › PDF explained › What are PDF forms?

What are PDF forms?

A PDF form is a PDF with interactive fields (text boxes, checkboxes, dropdowns, signature slots) that a reader can fill in and save. There are two technologies for fields, AcroForm and XFA, plus a third kind that is not a form at all: a flat page with printed boxes. Which one you have decides what tools can do with it.

AcroForm: the standard fillable form

AcroForm is the form technology built into the core PDF specification since version 1.2 and kept in ISO 32000. Each field is an object stored in the file with a name, a type (text, checkbox, radio button, list, button, signature) and a rectangle on the page. The value you type is stored separately from the page drawing, which is why a filled form can be reset, exported as data, or read by a database.

Because it is part of the open standard, AcroForm fields work in Acrobat, Preview, Chrome, Edge, Firefox and most mobile readers. The IRS, most HR departments and almost every "fillable PDF" you download use AcroForm. Fields can carry calculations and validation written in JavaScript; those scripts run in Acrobat and in some readers, and are silently ignored in others, which is the usual cause of a total that "does not add up" in a different app.

Try it on your PDFDrop a PDF here to open it in the viewer. Nothing is uploaded.Free, no account, no watermark. The file stays in this browser tab.

XFA: the dynamic form that many readers cannot open

XFA (XML Forms Architecture) is an Adobe technology, used from PDF 1.5 on, in which the form is an XML description wrapped inside a PDF shell. Dynamic XFA forms can grow and add rows as you type, which made them popular with government agencies and insurers around 2008 to 2015.

The problem is support. XFA was never part of the ISO standard beyond a reference, it is excluded from PDF/A and from PDF 2.0, and only Adobe Acrobat and Reader implement it fully. Other readers typically show a single page saying "Please wait... If this message is not eventually replaced by the proper contents of the document, your PDF viewer may not be able to display this type of document." If you see that message, the file is XFA; open it in Adobe Acrobat Reader, which handles it. Some agencies also offer a "print version" of the same form that is a flat PDF.

Flat forms: a form that is only a picture

Many documents look like forms but contain no fields: a scanned application, a Word template exported with drawn boxes, or an old form that was flattened. Clicking a box does nothing because there is nothing to click. These are "non-fillable" or "flat" forms, and if the page is a scan they are also image-only PDFs.

How to tell the difference: in a fillable form, hovering shows a text cursor or a highlighted field, and Chrome or Acrobat shows a "This document contains fillable form fields" bar. In a flat form you simply see a page. Flat forms can still be completed by adding text on top, the way you would write on a printed copy; how to fill out a PDF form covers both situations.

What flattening means and why people do it

Flattening converts the live fields and their values into ordinary page content: the typed text becomes positioned glyphs, the checkmark becomes a drawn glyph, and the field objects are deleted. After flattening nobody can change the answers by clicking, the file opens identically in every reader, and the JavaScript dependencies disappear.

People flatten a form before emailing a completed application, before archiving (PDF/A forbids several form features), and before adding a signature so the content under the signature cannot be edited. The cost is that the data is no longer extractable as fields. Acrobat, Preview on Mac (via Export or Print to PDF) and command-line tools such as pdftk and qpdf can flatten; the browser Print, Save as PDF trick also produces a flat copy in most cases.

What this viewer can and cannot do with forms

Honest summary, from the viewer's own capability list:

  • Shows AcroForm fields and whatever values are already in them, because pdf.js renders them with the page.
  • Does not let you type into the fields as fields. Form filling is not supported.
  • Workaround that works: use Add text to place your answers on top of each box, use Draw for checkmarks, and add a drawn signature where the signature line is. Download writes a new PDF with those marks embedded. The result behaves like a filled and flattened form for anyone who reads or prints it, but a system that expects data in named fields will see the fields as empty.
  • XFA forms cannot be filled here either; use Adobe Acrobat Reader.

For genuine field filling with saved data, use Chrome or Edge (built-in), Apple Preview, Adobe Acrobat Reader, or Firefox. For a form whose pages also need rotating, merging or annotating, do that part in the viewer with the annotate PDF tool, then fill the fields elsewhere.

Frequently asked questions

What is the difference between AcroForm and XFA?

AcroForm stores fields as standard PDF objects and works in nearly every reader. XFA stores the form as XML inside the PDF and works fully only in Adobe Acrobat and Reader.

How do I know if a PDF is fillable?

Hover over a box: a fillable field shows a cursor or highlight, and Chrome or Acrobat displays a form-fields notice. If nothing responds, the form is flat.

Why does my PDF form say please wait?

That page is the fallback inside an XFA form. The reader you used cannot render XFA; open the file in Adobe Acrobat Reader instead.

Can I fill out a PDF form in a browser?

Chrome, Edge and Firefox fill AcroForm fields natively. This viewer does not edit fields, but you can add text on top of a form and download the result.

What does flattening a PDF form do?

It turns the field values into fixed page content and removes the interactive fields, so answers can no longer be changed by clicking and the file looks the same everywhere.

Why does my filled form show blank in another app?

Some readers save values without regenerating the field appearance, and some ignore the form's JavaScript. Flattening the form before sending avoids both problems.