Choose the result you need
| Your task | Ask ChatGPT for | Check yourself |
|---|---|---|
| Compare an old and a revised version | Added, removed, changed, and important unchanged terms, with both locations | Numbers, exceptions, moved clauses, and sections the model did not mention |
| Compare two different documents | A topic-by-topic matrix of agreement, conflict, and missing coverage | Whether the documents actually address the same question; a blank cell is not automatically a contradiction |
| Find every wording or formatting edit | Use a dedicated redline first; ask ChatGPT to explain the consequential edits afterward | The redline and the original files, especially where layout or tracked changes matter |
ChatGPT's file-upload guidance lists comparing two documents as a supported task. Support for an uploaded format does not establish that every passage, table, or image was read correctly. For an exact revision record in Word, Word Compare shows changes in a new document by default, leaving the two source documents intact.
Put both sources in one chat
Attach both files to a new chat, or paste two short texts with clear Document A and Document B boundaries. Name the baseline and revision if these are versions of one document. If they are different documents, name their roles instead, such as requirements and proposal. Tell ChatGPT the question you need to answer: a policy change, a contract clause difference, conflicting figures, or coverage of a set of requirements.
Before asking for differences, check that the model can identify the files and their main headings. A date, owner, or version label helps when it exists, but an essay or research paper should not fail merely because it has no policy owner. If a file is incomplete, the version is disputed, or text is unreadable, resolve that before trusting a comparison.
I attached two documents. Treat [filename] as Document A and [filename] as Document B.
My comparison goal is: [one sentence].
First list the title or opening identifier and main headings you can read in each file.
If text, pages, tables, or sections are missing or unreadable, tell me where.
Do not infer a date, owner, or document status that the files do not state.
Wait for my confirmation before comparing them.
For sensitive documents, obtain the permission your organization requires before uploading them. The synthetic policy in the example below was pasted into a Temporary Chat; that does not make Temporary Chat an approval route for real confidential files. OpenAI's Temporary Chat guidance explains its history, training, and retention behavior.
Ask for a comparison you can verify
For two versions of the same document, compare sections by subject before comparing section numbers. A clause can move without changing its meaning. Decide what matters for your task: a deadline, amount, eligibility rule, required action, exception, responsible person, or new or removed provision. Spelling and layout can be set aside when you only need changes in meaning, but they belong in scope if you need an exact editorial review.
Compare Document A and Document B for [my goal].
These are [two versions of one document / different documents].
For each relevant point, give me:
1. the topic;
2. a short supporting quote and page or section from A;
3. a short supporting quote and page or section from B;
4. changed, unchanged, added, removed, agreement, conflict, or gap, as applicable;
5. what the difference means in plain English; and
6. anything you cannot verify from the files.
Keep exceptions, thresholds, dates, and units in the quoted scope.
Do not invent a reason for a change. If a page number is unavailable, use a heading and an exact excerpt.
If one file does not cover a topic, write NOT FOUND and name the headings you checked instead of inventing a quote.
Do not ask for “one row per expected change” unless you already have an independent answer key. Most readers do not. Start with a section or topic map, inspect unmatched sections, and then check the categories that matter to the decision. If the two files are unrelated, use not covered for a topic present in only one; calling it a “removed clause” would imply a version history that does not exist.
Here are three rows from the downloadable workshop-policy practice set. The short quotes make the conclusion checkable without hiding a condition:
| Topic | Version A | Version B | Finding |
|---|---|---|---|
| Eligibility | §1: “any paid workshop” | §1: “paid workshops priced above $20” | Changed: the proposed policy adds a price threshold. Whether exactly $20 is intentionally excluded needs owner review. |
| Refund method | §2: “original payment method” | §2: “original payment method, except cash payments, which are refunded by check” | Changed only for cash payments. Saying every refund changes to a check would be wrong. |
| Processing target | §2: “15 business days after approval” | §2: “15 business days after approval” | Unchanged. Keep it visible if reviewers need to confirm the target survived the revision. |
A new section takes a different kind of check. Version B adds a weather-closure rule, but “not present in A” is not a quotation from A. Inspect A's full section map and search for the same rule under another heading before recording it as new.
Audit the table against the originals
Open both files for every row that could affect a decision. Read the sentence around each excerpt, not just the model's quotation. Confirm the threshold and unit, whether an exception applies to all cases or only one, and whether a cross-reference changes the apparent meaning. A convincing citation can still point to a misread passage. Mark a row needs review when the source does not settle it.
Audit the comparison table against both attached files.
For every row, show the exact supporting excerpts and locations.
Flag a missing quote, changed number or unit, overstated exception, or claim that a provision is absent without checking the full section map.
Return PASS, CORRECT, or UNRESOLVED for each row and explain why.
Do not change an unresolved row into PASS just to complete the table.
This second prompt is a way to find candidates for correction, not independent proof. Check the flagged rows yourself. Also scan both outlines for sections missing from the table, and search the originals for important numbers, dates, names, and exceptions. If the output is meant for someone else, keep the detailed table beside a short summary that links each conclusion back to its row.
Adjust the method when the files are harder to compare
| Situation | Adjustment | Stop or verify when |
|---|---|---|
| Two different document types, such as a proposal and requirements | List the requirements or questions first, then compare what each file says about each one. | A topic absent from one file is a coverage gap; it is not evidence that a previously agreed term was removed. |
| Long files with moved sections or cross-references | Map headings by function, compare one topic at a time, and retain page or heading references in the table. | The model cannot identify a relevant section, or a cited clause depends on another section you have not read. |
| Scanned PDFs, image-heavy files, or figures | Check the extracted text and use accessible or OCR-checked copies when needed. Compare visual content separately if it matters. | Text is missing or a claim relies on an image the upload did not expose. Image handling depends on plan and file type. |
| Contracts, rights, money, or regulated policies | Use the organization's approved comparison and review process; use ChatGPT to organize questions and explain changes. | A clause's legal or operational effect needs an authorized specialist, or uploading the source is not approved. |
Work through the policy example
Download the fictional Version A and Version B. Version A has five numbered sections; B has six. The editor wrote an expected change key before the retained ChatGPT run. That key is for checking this exercise, not a prerequisite for comparing your own files. The screenshots show parts of a real signed-in ChatGPT run with the synthetic text; they are not a complete transcript or a test of every file format.
Map and classify
The first response paired sections by purpose and identified Weather closure as a new section. It also recorded which version was the approved baseline and which was the proposed replacement. The next prompt classified changes to eligibility, deadlines, money, method, entitlement, approver, owner, required action, and exceptions as consequential for this policy. Those categories would change for another kind of document.


Draft and challenge the findings
The draft ledger used eight rows, including an unchanged 15-business-day processing target. Before accepting it, the editor deliberately inserted four false candidate statements, including “every refund uses a check” and “the processing target changes to 10 days.” ChatGPT rejected the planted errors in the retained exercise. That result shows how this particular audit prompt handled known mistakes; it does not establish that another comparison will catch every omission or misreading.


The corrected ledger limits the check exception to cash, preserves the unchanged processing target, and includes the five-day refund-request window in the new weather rule. The reviewer handoff links conclusions to row IDs and leaves five questions for the policy owner, including whether a workshop priced exactly at $20 was meant to be excluded.

What the downloadable check actually checks
The local Python check reads the final ledger and handoff. It checks row IDs, selected expected phrases, the number of owner questions, and review-state wording. The retained result passes those eight structure checks. The script does not read Version A or B, verify quotations, or discover missing changes. Run it only with the practice files; use the manual source audit above for a real comparison. The review kit bundles the exercise files and screenshots.
For this fictional policy, the final state is READY_FOR_OWNER_REVIEW. The owner still has to settle the open questions before any publication or operational use. If you cannot locate a supporting passage, cannot confirm which version is authoritative, or cannot read material parts of a file, leave the affected conclusion unresolved.
