Chat with PDF files on a Mac: what the model needs from them

A 240-page contract, one question about a termination clause, and an answer that sounds authoritative and cites a clause number that does not exist. That sequence is why people who already use these tools keep searching for how to chat with pdf documents properly. The tools are not broken. The document was handed over in a state the model could only partly read, and nothing in the interface said so.

Most of the difference between a useful answer and a confident invention is decided before the question is typed. It is decided by whether the file has a text layer, how many pages it has, and which route was used to get it in front of the model.

A PDF is not one kind of file

The format holds at least three different things, and they behave nothing alike.

A born-digital PDF, exported from a word processor or a layout program, contains real text. Words can be selected, copied and searched, and any tool can extract them exactly.

A scanned PDF is a stack of images. The page looks like text to a person and contains no text at all as far as software is concerned. Unless optical character recognition has been applied, a search for a word that is plainly visible on screen returns nothing.

A mixed PDF is the one that causes the most damage, because it is the most common in real work. A contract typed on a computer, printed, signed, scanned back in, and then merged with a digital appendix. Half the document is searchable and half is not, and no part of the interface distinguishes them.

The test takes five seconds and is worth doing every time. Open the file in Preview, press Command-A, and try to copy. If text comes back, there is a text layer. If the selection catches nothing, or catches only some pages, that is a scan. Preview's own guide includes a troubleshooting page for exactly this situation, headed around not being able to select or copy text in a PDF, which is a good sign of how routine the problem is.

A scan that has not been recognised is invisible to search, and is read by a model only as a picture. That distinction explains a large share of wrong answers about documents that obviously contain the information.

What the tools actually do with the file

Two mechanisms are in use, and the limits published for them are specific enough to plan around.

The first is text extraction. The file is parsed, the text is pulled out, and the model reads that text. Cheap, fast, and blind to anything that is not text, which includes charts, stamps, handwriting and the layout itself.

The second is treating every page as an image alongside its text, so that charts, tables and visual structure are also read. More capable and much heavier, because each page consumes far more of the context window.

In the Claude apps the boundary between the two is documented. PDFs of 100 pages or fewer are analysed for both text and visual elements. From 101 to 1,000 pages, text only is processed and visual elements are not analysed. Above 1,000 pages the upload is refused outright. Chat uploads allow up to 500 MB per file and up to 20 files per conversation. Files added to a project's file store follow different rules: 30 MB per file, text extraction only apart from multimodal PDFs, and the total content has to fit inside the context window.

Through the API the numbers are stated differently, because the whole request is being measured. The maximum request size is 32 MB and the maximum is 600 pages per request, dropping to 100 pages when the request's context window is under one million tokens. The same documentation adds the caveat that matters for real files: dense PDFs, meaning many small-font pages, complex tables or heavy graphics, can fill the context window before the page limit is reached, and large files can fail even when uploaded and referenced rather than sent inline. Splitting into sections is the suggested remedy.

The practical reading of all this is simple. A 60-page report is read thoroughly. A 400-page report is read as text with the charts effectively missing. A 1,200-page bundle has to be split before any tool will look at it.

Upload it, or keep it on the Mac

The route decides what leaves the machine, and the differences are concrete rather than philosophical.

Route Where the file goes What to check
Browser tool Uploaded to that service Retention terms, and whether an account is needed
Desktop chat app Uploaded to the model provider Page and size limits above
Agent in the folder Read from disk on request Which directories were granted
Local model Nothing leaves the Mac Memory and time, and weaker on complex layouts

Browser tools are the easiest to start with and the ones whose terms deserve reading once. Smallpdf states that uploaded documents are automatically deleted after one hour unless saved to an account, and that transfers use TLS. ChatPDF works without a sign-up, answers with built-in citations that point back to the page, and allows folders so that several PDFs can be questioned in one conversation. Those are genuinely useful properties for a paper or a manual.

They are the wrong route for a signed contract, a medical record or an unreleased financial statement, and not because any particular vendor is careless. The rule of thumb that survives contact with a compliance team is that a document nobody outside the building should see does not go through a form in a browser. That leaves the desktop app under the provider's terms, an agent reading the file where it already sits, or a locally run model.

The last option has a cost that is often understated. Local models handle plain prose well and handle complex tables and multi-column layouts less well than the hosted ones, and a long document takes real time on a laptop. For contracts and statements, that trade is frequently worth it. For a 400-page technical manual, it usually is not.

Where the answers go wrong

Five failures account for most of it, and each one is recognisable once it has been seen.

Tables that break across pages

A table split over three pages is often extracted as three separate fragments, with the header row attached only to the first. Totals get attributed to the wrong column. Any answer that involves a number from a table deserves a look at the page it came from.

Reading order in multi-column layouts

Academic papers and annual reports are frequently extracted column by column in the wrong sequence, so sentences interleave. The model then answers from text that no human ever read in that order. Answers that seem to mix two unrelated topics usually have this behind them.

Headers, footers and watermarks

Repeated page furniture is extracted along with everything else. A draft watermark on every page can make a final document read as a draft, and a running footer can attach the wrong date to a clause.

The scanned section inside a digital file

The mixed PDF from earlier. The model answers thoroughly about the searchable half and says nothing about the rest, which reads as a complete answer. Asking how many pages contain readable text is a quick way to expose it.

Forms that were filled in after the fact

Interactive PDF forms hold their entered values separately from the printed page, and a flattened export sometimes keeps the blank template rather than the completed version. A model reading the extraction then reports empty fields on a document that looks filled in on screen. Printing to a new PDF, or exporting a flattened copy from Preview, settles which version is being read.

The wrong version of the file

Three copies of a contract in Downloads, all with names ending in a number. This one is not a limitation of any model, and it is the most common cause of a wrong answer in practice. Confirming which file is open before asking anything about it costs nothing.

Questions that hold up

The phrasing of the request changes the failure rate more than the choice of tool does.

Ask for the page. A question that ends with a requirement to give the page number and quote the sentence verbatim makes the answer checkable in seconds, and a model that cannot find the passage tends to say so rather than paraphrase from nothing.

Ask for absence explicitly. "Does this document contain a clause about automatic renewal, and if not, say so" produces a far more reliable answer than "summarise the renewal terms", which invites an answer whether or not the clause exists.

Split the document before asking about a long one. For a bundle, questioning the relevant twenty pages beats questioning six hundred, and the answer arrives with the visual elements intact rather than stripped.

Name the section rather than the subject when the document has a structure. A request aimed at the payment terms section behaves better than one aimed at everything about payment, because the first has an anchor in the document and the second invites the model to gather fragments from anywhere in it.

Avoid asking for every occurrence of something across a long document as a single request, then trusting the count. Extraction gaps are invisible in that kind of answer. A search in Preview for the same term is the cross-check, and if the two disagree, the text layer is incomplete.

Doing it to a folder rather than one file

One PDF at a time is fine for a contract. It is the wrong shape of work for the thirty statements that arrive every month, and the limit of 20 files per conversation makes that plain.

At that point the question changes from which chat tool to use into where the files live and what is allowed to read them. A folder, a terminal in that same folder, and an agent that can list it, read the files it needs and write its output back next to the originals removes both the uploading and the downloading. Keeping those three things in one window is the difference between a batch that takes an afternoon and one that takes a week of small sessions. Where that helps and where a dedicated PDF editor is still the better tool is set out in the comparison with other file managers, and the same folders can be reached from an iPhone or iPad when the answer is needed away from the desk.

What to change first

Before the next question, check the text layer in Preview and check the page count. Those two facts determine whether the tool is reading the document or looking at pictures of it, and they take longer to explain than to verify. For work that arrives as a folder of documents every month rather than as one file, Atriens is the part that removes the upload step.

Frequently asked questions

Why does the tool miss information that is clearly printed on the page?

Almost always because that page has no text layer. A scanned or photographed page is an image, so extraction returns nothing for it even though the words are legible to a person. Selecting the text in Preview confirms it in a few seconds, and running character recognition over the file fixes it.

How long a PDF can actually be handled?

In the Claude apps, PDFs of 100 pages or fewer are analysed for text and visual elements together, 101 to 1,000 pages are processed as text only, and anything above 1,000 pages is refused. Through the API the request limit is 32 MB with a maximum of 600 pages, and 100 pages when the context window is under one million tokens. Dense pages can exhaust the context before those page limits are reached.

Is it safe to upload a contract to a free web tool?

That depends entirely on the document and the terms. Several services publish clear retention policies, such as deleting uploaded files after an hour unless they are saved to an account, which is reasonable for a public paper. For anything covered by a confidentiality obligation, reading the file from the disk with a local agent or a locally run model avoids the question altogether.

Can several PDFs be questioned at once?

Yes, within limits. Chat uploads allow up to 20 files in one conversation, and some browser tools group documents into folders so that one conversation covers all of them. Beyond that, the work belongs in a folder that an agent reads directly, because attaching files by hand stops scaling at about the same point.

Does asking for page numbers really improve the answer?

It improves what can be done with the answer, which matters more. A cited page and a verbatim quotation can be checked in seconds, so a mistake is caught immediately instead of being carried into a document. It also tends to produce a plain statement that the passage was not found, rather than a fluent paraphrase of nothing.

Back to all posts