Office workflows
Use ChatGPT to Compare Two Policy Drafts Without Losing the Differences
Cihan's view: Upload two dated policy drafts, ask ChatGPT for a source-linked difference table, and have a policy owner review every material change before adoption.
When a policy gets revised, the dangerous sentence is often the one that looks almost unchanged.
ChatGPT can compare uploaded documents and extract specific sections. This guide turns that capability into a review workflow for two fictional policy drafts. The example is documentation-based with an illustrative output. No ChatGPT execution or measured accuracy is claimed.
What you need
- ChatGPT with file uploads available in your plan and workspace. OpenAI documents comparison and extraction as supported file-review tasks, but limits and supported features vary.
- Two dated policy files in a supported document format.
- A policy owner who can decide whether a change is acceptable.
See File Uploads FAQ from OpenAI for current file limits and retention details. Do not upload confidential policy material until your organisation approves the tool and its data handling.
1. Create the fictional files
Create travel-policy-2026-09.md:
# Travel policy
Approval: The team lead approves domestic travel before booking.
Receipts: Submit receipts within 10 business days after the trip.
Economy class: Required for flights under 6 hours.
Exceptions: Finance reviews exceptions before booking.
Source owner: Operations
Effective date: 2026-09-01
Create travel-policy-2026-10.md:
# Travel policy
Approval: The department head approves domestic travel before booking.
Receipts: Submit receipts within 15 calendar days after the trip.
Economy class: Required for flights under 6 hours.
Exceptions: Finance reviews exceptions after booking.
Source owner: Operations
Effective date: 2026-10-15
The changed approval role, receipt rule, time unit, and exception timing are deliberate. A comparison should surface each one.
2. Upload both versions
Open a new ChatGPT conversation and upload both files. Keep their dates in the filenames. If you use a ChatGPT Project for recurring policy reviews, add the files as project sources instead, then check which version is current before asking for a comparison. OpenAI’s Projects documentation says projects can use uploaded PDFs, spreadsheets, documents, images, and pasted text as context.
Do not upload unrelated policies. A narrow comparison is easier to inspect.
3. Ask for a difference table
Paste this prompt:
Compare the two uploaded travel-policy files.
Treat travel-policy-2026-09.md as the older version and
travel-policy-2026-10.md as the newer version.
Return:
1. A table with section, old wording, new wording, change type,
and review question.
2. A list of unchanged sections.
3. A list of contradictions or unclear terms.
4. A short reviewer checklist.
Rules:
- Quote the exact changed wording from each file.
- Do not decide whether a change is good or legally valid.
- Do not infer an approval hierarchy beyond the text.
- Preserve the difference between business days and calendar days.
- Flag a changed timing rule even when the sentence structure is similar.
- If a section appears in only one file, mark it ADDED or REMOVED.
- Use the filename as the source for every row.
4. Review the output against the files
The output should identify at least these changes:
| Section | Change to verify | Review question |
|---|---|---|
| Approval | Team lead changed to department head | Is the new approver intentional? |
| Receipts | 10 business days changed to 15 calendar days | Which clock should staff use? |
| Exceptions | Finance review moved from before to after booking | Is booking allowed before review? |
The economy-class section is unchanged. The effective date also changed, so it belongs in the review list even though it is not a body-section rule.
Check the exact quoted wording against both files. A polished summary is not proof that the comparison is complete.
5. Turn differences into a decision handoff
Ask ChatGPT to produce a reviewer checklist with one checkbox for each changed section. Keep the checklist separate from the policy itself. The policy owner should accept, reject, or clarify each change, then update the canonical document outside the chat.
Do not ask the model to merge the files into a final policy. A merge can hide a disputed sentence. If you need a clean draft, create it only after the owner resolves the review questions and compare it again with the approved decision record.
Acceptance checks
The workflow passes when:
- Both dated files appear in the conversation or Project.
- Every changed section has old and new wording.
- Business days and calendar days stay distinct.
- The exception timing change is visible.
- The unchanged economy-class section is listed as unchanged.
- A human policy owner still makes the decision.
Troubleshooting
- Only the obvious wording changes appear: ask for a line-by-line comparison and require unchanged sections in the output.
- The dates are treated as the same: require the filename and effective date to appear in every relevant row.
- The model rewrites instead of compares: repeat “quote exact wording” and remove any request for a final policy.
- A file is missing or unreadable: check the upload status, confirm the filename in the prompt, and compare that file manually before continuing.
TRY / SKIP / USE: TRY this with fictional policy files. SKIP legal, HR, safety, or regulated policies unless a qualified owner reviews the complete result. USE the difference table as a review aid, never as the approval record.
Sources and next step
- File Uploads FAQ from OpenAI
- Projects in ChatGPT from OpenAI
- Use ChatGPT to Review a Draft Against a Written Brief
- Get The Weekly Verdict
The useful output is a visible list of differences and questions. The policy owner still owns the policy.