Codex writes better when you give it a truth boundary
The fastest way to create weak SEO content is to ask an AI to "write an expert guide" and hope it knows your product, service, location, price, process, customers, and limits.
It does not. A Fact Pack solves this. It is a small source folder that tells Codex what it may state, where the fact came from, and what it must leave blank until you confirm it.
Definition of done: You have a Fact Pack with at least ten facts or source links, each labelled confirmed, needs owner fact, or do not use. You can reuse it for every page in the course.
Allow 45 minutes. Bring your Traffic Mission, the public pages and documents you are allowed to use, and a way to ask an owner for missing facts. Do not upload passwords, customer data, private contracts, or materials you are not authorized to share.
Collect facts by decision, not by department
Open a document called fact-pack.md. Add only information that helps the Traffic Mission visitor decide.
Fact group | Examples | Safe source |
|---|---|---|
Fit | Who the offer is and is not for | Approved offer page, owner confirmation |
Process | What happens before, during, and after the service or purchase | Documented workflow, support policy |
Proof | Credentials, product specifications, test method, visible examples | First-party documentation or approved evidence |
Limits | Price boundary, availability, location, compatibility, exclusions | Current policy, inventory system, owner confirmation |
Next step | Booking, purchase, demo, signup, support route | Live conversion page or approved process |
Do not add vague claims such as best, trusted, fast, or easy unless you have a defined source and a page can explain them.
Start with a source register, not a pile of tabs
Make a folder called fact-pack. Add copies or links to only the sources you would be comfortable having an editor review:
fact-pack/
traffic-mission.md
service-scope.md
onboarding-checklist.pdf
public-terms-url.txt
owner-questions.md
fact-pack.mdFor the bookkeeping running example, the first five usable facts might be:
Fact | Status | Source | Where it helps |
|---|---|---|---|
Monthly bookkeeping is offered to sole-trader designers | CONFIRMED | approved service scope, 2026-07-29 | Fit opening |
Personal tax-return filing is not offered | CONFIRMED | service terms, 2026-07-29 | Scope boundary |
A discovery call happens before onboarding | CONFIRMED | onboarding checklist | Next-step explanation |
Service area is Bristol only | NEEDS OWNER FACT | public copy conflicts | Local fit section |
Clients save hours every month | DO NOT USE | no measured source | Remove from page ideas |
Notice that the strongest row is not a marketing sentence. It is a fact that changes a visitor decision. A source must be specific enough that another person can locate it later: page URL, document name, owner, and review date.
Classify first, then let Codex organize
Do a quick first pass yourself. Mark a statement CONFIRMED only if it has a current source; mark it NEEDS OWNER FACT when it might be true but you cannot prove it; mark it DO NOT USE when it is false, vague, outdated, or too risky. Do not ask Codex to infer the status from sales language.
If two owned sources conflict, write both in the pack and mark the fact CONFLICT. It becomes an owner question. A conflict is not something the model should resolve by choosing the more attractive claim.
Build the Fact Pack with Codex
You are my Fact Pack editor.
Traffic Mission:
[paste mission]
Source material I own or approve:
- [public URLs]
- [document paths]
- [screenshots or notes]
- [owner statements]
Create fact-pack.md with this table:
FACT | STATUS (CONFIRMED / NEEDS OWNER FACT / DO NOT USE) | SOURCE | WHERE IT HELPS
Then add:
1. REQUIRED FACTS FOR THE FIRST TRAFFIC PAGE.
2. CLAIMS THAT WOULD BE UNSAFE TO MAKE.
3. UP TO FIVE OWNER QUESTIONS, ordered by importance.
4. A short "Codex rule" paragraph: use confirmed facts only; mark missing
facts; never turn an unknown into a claim.
Do not invent facts, infer private customer outcomes, create testimonials,
change source files, or publish anything.Demand a claim-level result, not a polished summary
The finished fact-pack.md should include rows that can be used directly in a later draft. Here is what good and bad look like:
Bad row | Why it fails | Better row |
|---|---|---|
We provide stress-free bookkeeping. CONFIRMED. | "Stress-free" is a feeling, not a checkable service fact. | We send a documented onboarding checklist before monthly record handoff. CONFIRMED. Source: onboarding checklist v3, reviewed 2026-07-29. |
We help all freelancers. CONFIRMED. | "All" is a risky, probably false fit claim. | Sole-trader designers are listed in the approved service scope. CONFIRMED. Other freelancer types: NEEDS OWNER FACT. |
We are local. CONFIRMED. | It does not tell a visitor where or whether remote service is available. | Bristol-only versus UK-remote availability: NEEDS OWNER FACT. Do not state a service area until owner confirms it. |
If the model converts missing facts into fluent copy, use this correction:
Audit the Fact Pack row by row. Replace every unsupported adjective, result,
quantity, location, price, time claim, or customer outcome with either a source
backed fact, NEEDS OWNER FACT, CONFLICT, or DO NOT USE. Do not preserve a claim
because it sounds plausible.Audit the output in two minutes
Search the Fact Pack for CONFIRMED. Every confirmed fact needs a source a reader or owner could check. Search for NEEDS OWNER FACT; these are not failures. They are exactly what stops false claims before they reach a page or AI answer.
Bad Fact Pack entry: Customers save time. CONFIRMED. Source: common sense.
Good Fact Pack entry: The onboarding checklist requires a connected Shopify store and product feed. CONFIRMED. Source: onboarding documentation dated 2026-07-28. Helps: setup-fit section.
Run four searches before you trust the pack
Search the document for these terms one by one:
CONFIRMED: every row needs a source and date or owner reference.NEEDS OWNER FACT: every row needs a direct question, not just the label.CONFLICT: every row needs the competing sources named.DO NOT USE: every row needs to stay out of page copy, even if it would
sound persuasive.
Then choose the three facts that are blocking for the first page. For the bookkeeping guide, a service scope and tax-return exclusion are blocking. A testimonial is not. Tell the owner what you need in one compact request:
I am preparing a page for [Traffic Mission]. Please confirm only these facts:
1. [specific service-area or eligibility question]
2. [specific process or price-boundary question]
3. [specific action after the form or trial]
I will mark any unanswered item as NEEDS OWNER FACT and will not publish it as
copy.Use a dated change log
Facts age. Prices, service areas, product support, policies, stock, and onboarding steps all change. Add this line under every changed row:
Changed: 2026-07-29 | Owner/source: [name or document] | Pages to recheck: [URLs]When you update a fact, do not ask Codex to rewrite the whole site. Ask it to list the drafts and pages that use the fact, then prepare reviewable changes for the affected pages only.
Use the pack in every later Codex prompt
Add this sentence whenever Codex researches, drafts, or revises a page:
Read fact-pack.md first. Use CONFIRMED facts only. Keep NEEDS OWNER FACT
visible. Never turn an unknown into a plausible claim.When a fact changes, update the pack first, including the date and source. Then ask Codex which pages use that fact. This gives you a safe update path for changed prices, service areas, policies, product compatibility, and onboarding steps.
Give Codex a narrow drafting boundary
When you reach the page-writing lessons, prepend this instruction to every prompt:
Read fact-pack.md before doing any work. Use only rows marked CONFIRMED. Do not
turn NEEDS OWNER FACT, CONFLICT, or DO NOT USE rows into reader-facing copy.
For every planned claim, cite the Fact Pack row it comes from. Stop and ask for
an owner fact if a required sentence has no CONFIRMED source.This looks strict because it is. The Fact Pack is what makes an AI-assisted page reviewable by someone who did not write it.
Keep the pack small enough to use. A forty-page archive is not automatically better than a two-page document with the current scope, limits, sources, and open questions for one page. Add more material only when the Traffic Mission needs it.
Run a five-minute fact check before every later handoff
When Codex returns a draft, brief, diff, or change sheet, do not assume it obeyed the Fact Pack. Pick the three most consequential lines - usually an eligibility, scope, price, location, compatibility, or policy statement - and ask it to show the exact supporting row. If the response names a source that is not in the pack, treat the claim as unverified until the owner adds it.
Read [proposed artifact] and fact-pack.md. Make a Claim Trace Table for every
material public statement: exact claim, Fact Pack row, source/date, status, and
required action. Mark any statement with no CONFIRMED row REMOVE OR NEEDS OWNER
FACT. Do not rewrite the artifact, publish, or soften an unsupported claim.This is especially important after a long prompt: plausible wording is not the same thing as an approved fact. Save the trace table with the page packet; it makes the later publishing review faster and makes corrections possible when a fact changes.
Course map
Next: Make Codex Find 30 Real Questions Your Customers Already Ask. Codex now has a truth boundary before it turns customer language into opportunities.
Completion check
- [ ] Every confirmed fact has a source.
- [ ] Missing information is visible, not silently assumed.
- [ ] The pack includes fit, process, proof, limits, and next-step facts where relevant.
- [ ] I saved
fact-pack.mdwhere future Codex prompts can read it. - [ ] I recorded a source and review date for each CONFIRMED row.
- [ ] I separated conflicts from unknowns instead of asking Codex to pick a version.
- [ ] I sent a small, prioritized owner-question request for the blocking facts.
Author: Iris Campbell, Editorial Evidence Analyst, 2,500+ Sources Reviewed at Auspia. Iris writes about evidence systems that keep AI-assisted content useful and accurate.

Use this sequence for the assignment: start with a real input, check the evidence, prepare one reviewable output, then choose the reader next step.












