Start here
Use this prompt when you already have a rough list of staff certifications and expiry dates (in an email, notes file or spreadsheet column) and need it turned into an organized renewal-tracking table.
What to paste: the whole prompt below, then your own certification list as a separate message. If you have one, include the reference date you want the urgency tiers measured from (for example, today's date). If you don't add one, the prompt deliberately marks the table as blocked on the reference date instead of guessing.
Where to paste it: any ordinary AI chat that accepts text. No terminal, account setup or API key is needed.
How to check the output: the reply should have four parts — A: the table, B: verification gaps, C: counts, D: a manual spreadsheet procedure. Before you trust it, confirm that every entry you pasted appears exactly once, that no urgency tier is attached to a date you never supplied, and that Part C's counts match what you see in the table.
What this prompt does
It organizes, it does not complete. It reproduces entries faithfully, normalizes dates only when the original is unambiguous, assigns one of six fixed urgency tiers (Expired, Tier 1 critical 0-30 days, Tier 2 soon 31-60, Tier 3 plan 61-90, Tier 4 later, Unknown), and separates anything uncertain into a verification-gaps list. It never invents a completion date, renewal status, manager, cost or reminder. Ambiguous dates such as 03/04/2026 are kept as written and flagged, not interpreted.
Inputs and limits
Each entry should carry a name, a certification, and ideally an expiry date, plus any reference, role or note you have. Dates may be missing, partial or unevenly formatted; duplicates are expected and get reported rather than merged.
Limits worth knowing before you paste anything:
- Empty or unrecognizable input should make the assistant stop, not produce a sample table.
- The prompt does not send reminders, update systems or schedule anything. It only prepares a draft for human review.
- Anything you paste goes to whichever AI service you use, so treat the list as you would any confidential file and remove details you are not comfortable sharing.
- Regulatory or legal wording in your list is only echoed back, never interpreted.
The prompt contains a fictional worked example (Dana Okafor, Priya Raman, Sam Lee). Those people and dates are illustrative only — not real data and not test results.
FAQ
Why doesn't it just convert every date? Because some formats are genuinely two-way ambiguous, and a confident-looking wrong date is worse than a flagged one. The ambiguity stays visible in Part B so a person can resolve it.
Can I use it without a reference date? Yes, but the whole table is then marked blocked on the reference date. Add one when you want urgency tiers.
Verification note
Source reviewed; runtime not tested. The prompt text and its intent were checked against the supplied material; no run of this prompt against a real certification list was performed here.
Complete reusable prompt
You are helping me build a renewal-tracking table for staff certifications. I will paste a raw list of people and their certifications. Your job is to organize it, not to complete it, and not to assume anything that is not in my input.
INPUT I WILL PROVIDE A pasted block containing, per line or per short entry: a person's name, a certification or license name, and (if known) an expiry date, plus optionally a reference or ID, a required-by role, or a note. Dates may be missing, partial, or written in different formats. There may be duplicates or the same person listed twice.
WHAT TO DO
- Reproduce every entry faithfully in a table. Do not drop rows. Do not merge two different certifications for the same person unless they are truly the same certification, in which case note the duplication.
- Normalize dates only when the original is unambiguous. If a date could be read two ways (for example 03/04/2026), keep the original string and flag it as ambiguous rather than choosing an interpretation.
- For each row, assign an urgency tier based on the expiry date relative to a reference date I provide. If I do not provide a reference date, use no tier and mark the whole table as blocked on the reference date instead of guessing.
- Compute days remaining only for rows with a complete, unambiguous expiry date. Otherwise leave the days-remaining cell as 'needs date'.
- Produce a separate verification-gaps list: every row with a missing, partial, or ambiguous date; every duplicate; every certification name that appears in more than one spelling; every entry where the person is unclear.
- Never invent a completion date, a renewal status, a manager, a cost, or a reminder. The table tracks what exists; it does not record what was done.
URGENCY TIERS (use these labels, do not add others)
- Expired: expiry date is before the reference date.
- Tier 1 (critical): 0-30 days remaining.
- Tier 2 (soon): 31-60 days remaining.
- Tier 3 (plan): 61-90 days remaining.
- Tier 4 (later): more than 90 days remaining.
- Unknown: cannot be tiered because the date is missing or ambiguous.
OUTPUT FORMAT Part A - Renewal-tracking table with these columns, in this order: Person | Certification | Raw expiry (as given) | Normalized date | Days remaining | Urgency tier | Source row note
Part B - Verification gaps, grouped as:
- Missing or partial dates
- Ambiguous dates (show the original string and why it is ambiguous)
- Duplicate or near-duplicate entries
- Name or certification spelling inconsistencies
- Rows I should confirm before anyone is contacted
Part C - Counts: total rows, rows with complete dates, rows tiered, rows unknown, duplicates detected. Counts must match the table; if they do not, say so.
Part D - Manual alternative: a short numbered procedure a person can follow in a spreadsheet or on paper to reproduce Parts A and B without any AI tool, including how to sort by days remaining once dates are complete.
BOUNDARIES
- You are preparing a tracking draft for human review. You are not sending reminders, not updating any system, and not scheduling anything.
- If my input is empty or contains no recognizable certification lines, say so and stop rather than producing an example table.
- If an entry mentions a regulatory or legal requirement, note only that the entry says so; do not interpret what the law requires.
CHECK BEFORE YOU FINISH
- Confirm every input entry appears exactly once in Part A or is listed as a duplicate in Part B.
- Confirm no tiered row contains a date you supplied yourself.
- Confirm each ambiguity flag quotes the original string from my input.
- Confirm Parts C counts equal the actual table and gap-list contents.
- If any check fails, state which check failed and fix the output before presenting it.
FICTIONAL EXAMPLE INPUT Reference date: 2026-11-01 Dana Okafor - Food Handler Card - 12/2026 Dana Okafor - Forklift Operator - 2026-11-20 Priya Raman - CPR - 03/04/2026 Sam Lee - First Aid - (no date) Sam Lee - First Aid
EXAMPLE OUTPUT SHAPE Part A: Dana Okafor | Food Handler Card | 12/2026 | (partial) | needs date | Unknown | month only; day unknown. Dana Okafor | Forklift Operator | 2026-11-20 | 2026-11-20 | 19 | Tier 1 (critical) | none. Priya Raman | CPR | 03/04/2026 | (kept as given) | needs date | Unknown | day/month order ambiguous. Sam Lee | First Aid | (none) | needs date | needs date | Unknown | date absent; duplicate entry. Part B: Missing dates - Sam Lee First Aid. Ambiguous - 03/04/2026 for Priya Raman. Duplicates - Sam Lee First Aid appears twice. Part C: total rows 5; complete dates 1; tiered 1; unknown 4; duplicates 1. Part D: numbered spreadsheet procedure.
This worked example is illustrative only and represents no real person. Now wait for my input and apply the same rules to it.
References and reuse
- ChatGPT release notes · Reviewed 2026-10-04
Original TokRepo prompt · CC BY 4.0. Reference documents retain their own rights.