BASALT · JOURNAL

Why a PDF says 'Please wait...' and never opens on a Mac

2026-10-30 · please wait if this message is not eventually replaced

When a PDF opens to a page that says "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," the file is an XFA form and your viewer can't build its pages. The message isn't an error and nothing is loading. It's the actual text of a placeholder page stored in the file.

Preview on a Mac shows that placeholder page and stops there. Waiting won't change it, and neither will reopening the file or restarting your Mac. The fix is to get the form in a different shape, which the sections below cover.

What the message is

XFA stands for XML Forms Architecture. It's a form format that the PDF specification added in PDF 1.5 as an /XFA entry inside the AcroForm dictionary, and PDF 2.0 deprecates it. In an XFA form the layout, fields and scripts are described in XML, and a reader that supports XFA draws the form from that description.

A reader that doesn't support XFA can't do that. To give those readers something to show, the form's creator puts one ordinary page in the file with the "Please wait..." sentence on it. A reader that supports XFA replaces that page with the real form. A reader that doesn't just displays the page as written.

So the message is a placeholder, and it says in its own words what happened: the viewer may not be able to display this type of document.

Two kinds of XFA file

The first kind has real pages. The form's visible pages are in the PDF in the normal way, and the XFA data sits on top for readers that use it. A viewer without XFA support can show those pages, though how the fields behave varies by viewer.

The second kind is dynamic XFA. It has no real pages, only the placeholder and the instructions to generate pages. The catalog contains /NeedsRendering true, which means the pages must be produced from the XFA when the file opens. A reader that can't run those instructions sees only the placeholder, which is what you've got.

You can tell which kind you have from the file itself, as shown next.

Confirm it with qpdf

Install qpdf with brew install qpdf. Then print the document catalog. The first command prints the trailer, which names the catalog as /Root:

qpdf --show-object=trailer document.pdf

Read the number after /Root, say 12, and print that object:

qpdf --show-object=12 document.pdf

In a dynamic XFA form you'll see /NeedsRendering true and an /AcroForm entry. Print the object number after /AcroForm the same way. If its dictionary has an /XFA entry, the file is XFA. On a test form built for this purpose, the AcroForm dictionary listed /XFA followed by labeled parts such as (datasets) and (form), each pointing to a stream of XML.

If the catalog and AcroForm are buried in compressed object streams, an expanded copy is easier to search:

qpdf --qdf --object-streams=disable document.pdf expanded.pdf
grep -a -n -E 'NeedsRendering|/XFA' expanded.pdf

Don't rely on qpdf --json --json-key=acroform. It reports hasacroform as true for plain AcroForm files and XFA files alike, so it can't tell them apart.

How to read or fill the form anyway

The simplest fix is to ask the sender. Tell them your viewer can't display the form, since some issuers keep an ordinary PDF version or a different download for exactly this case. Ask for "a version of the form that isn't XFA."

If the form has to be filled in as issued, use a reader that supports XFA forms. This is the honest answer when the issuer requires the XFA version, such as when the form submits data back to a system that expects it. Preview can't fill it, and some browsers' built-in viewers can't either.

If you only need to read, print or archive it, an ordinary PDF converted from the form is enough, and it opens anywhere. For a form with real pages, conversion draws the answers into those pages. A dynamic form has no pages to start from, so a converter has to generate them by running the form's own scripts, and what you get is a rendition of the form rather than the form.

A conversion has two limits worth knowing. The result is no longer an editable form, and a digital signature on the original doesn't carry over. If the signature matters, keep the original file as your record. How to tell if a PDF is fillable covers the three kinds of form, and flattening a PDF explains what drawing form answers into the page does.

What not to try

Don't download a converter from a site you found by searching the message. Uploading a form often means sending personal or financial details to a stranger's server. Don't edit the file's bytes by hand either. The page text is easy to change, but the form still won't render, and you'll have damaged the only copy.

If the form does open and takes your answers, but they're gone the next time you open it, that's a different problem. A PDF form that won't save covers it.

Frequently asked questions

What does "Please wait... If this message is not eventually replaced" mean?

It means the PDF is an XFA form and your viewer can't generate its pages. The sentence is a placeholder page stored in the file for readers that don't support XFA. A reader that does support it replaces the page with the real form. A reader that doesn't leaves it on screen forever.

How do I fix the "Please wait" message when opening a PDF?

You can't fix it inside the viewer. Ask the sender for a non-XFA version of the form, or open the file in a reader that supports XFA forms. If you only need to read or print it, convert it to an ordinary PDF. Waiting, reloading and restarting won't help, because nothing is loading.

What is an XFA form?

It's a PDF form whose layout, fields and scripts are described in XML under an /XFA entry in the AcroForm dictionary, instead of being drawn as normal page content. It was added in PDF 1.5. PDF 2.0 deprecates it. Only readers with XFA support can show the dynamic kind.

Why does Preview show "Please wait" instead of my form?

Preview doesn't render XFA, so it shows the placeholder page the form's creator stored in the file. The same file shows its real pages in a reader that supports XFA forms. Preview isn't broken, and the file isn't corrupt. It's a format Preview doesn't build pages from.

Can I fill in an XFA form on a Mac?

Not in Preview. Filling an XFA form needs a reader that supports XFA. If you can't use one, ask the sender for an ordinary fillable PDF. A conversion to an ordinary PDF is for reading and printing, and it doesn't let you fill in the XFA form.

How can I tell if a PDF is XFA without opening it?

Look for /XFA in the AcroForm dictionary and /NeedsRendering true in the catalog, using qpdf --show-object as above or a search of an expanded copy. /NeedsRendering true means the pages are generated when the file opens.

Will converting the form change its content?

It changes what the file is more than what it says. For a form with real pages, the answers end up drawn into the page. For a dynamic form, the result is a rendition made by running the form's scripts, so its layout can differ from the original. A digital signature doesn't carry over, so keep the original if you need it.

Doing it in Basalt

Basalt has an XFA to PDF tool for exactly this file. For a form whose pages exist, it draws the answers into the page and removes the XFA data. For a dynamic form it runs the form's own scripts inside the sealed engine process and draws the result as an ordinary PDF. That result is a rendition: it should read correctly but may not match page for page, and a digital signature isn't carried over. If anything can't be read back out of the result, nothing is written. When the two copies of an answer in a form disagree, it stops and shows both. It can run over a folder. It doesn't let you fill in an XFA form, so if the form must go back to the issuer filled in, use one of the routes above. The original is never modified. Basalt is $29 once for up to three Macs, and the 24 hour trial includes this tool.

Redaction that proves itself

Basalt destroys the content you mark, then re-opens the file it wrote and proves the content is gone before it saves anything. Your documents never leave your Mac.

DOWNLOAD BASALT 2.3.2 BUY $29 FREE FOR 24 HOURS · MACOS 13+