All updates

Explainers · You asked 10

We checked. Nothing came up.

A clean result today doesn't prove what you saw eighteen months ago. Sanctions lists change constantly, and overwriting yesterday's data destroys your own alibi.

Published 18 August 2026Last reviewed 18 August 2026
A split card: what you remember — 'we checked it' — versus what you can prove, which is empty unless the list version was kept with a timestamp, illustrating why negative results need the same evidence discipline as positive ones.

You asked

"We checked, nothing came up" is a claim you may have to defend a year and a half from now, in front of someone who wants to know exactly what you saw on a specific transaction date — not what today's list says. Lists change constantly: names get added and removed every week, sometimes several times. If your system only ever shows the current state, the version you screened against on that date is gone the moment the source updates — and you can't reconstruct evidence you overwrote. The fix isn't remembering harder; it's keeping every version, timestamped, so a past check can be reproduced with the exact wording that was in force then.

The claim you'll have to prove later

An audit doesn't ask what your system says today. It asks what it said on the transaction date — sometimes a year or two after the fact, when the person asking has no reason to take your word for it. "We checked, it was clean" is not evidence; it's a memory. Evidence is a timestamped record of what the list actually contained at that moment, one you can produce on demand.

This is where negative results are structurally harder to defend than positive ones. A hit leaves a paper trail — a match, a review, a decision. A clean result leaves nothing behind, by default, unless something was built specifically to preserve it.

Why today's list doesn't prove yesterday's check

Sanctions lists aren't static documents; they're live feeds that change on their own schedule, sometimes with several updates a week across dozens of regimes. A name added last month didn't exist in the list you screened against eighteen months ago — and a name delisted last week is invisible if you only keep the current version. Overwrite the old data with the new sync, and you've destroyed the only record that could show what you actually saw.

That's not a hypothetical edge case; it's the default behaviour of any system that treats a sanctions list as a single table to keep up to date, rather than a history to preserve. Keeping up to date and keeping proof are two different engineering problems, and solving the first doesn't solve the second.

What actually holds up: versioned, reproducible history

Every source load needs to land as its own dated version, not overwrite the last one. That turns "we checked" from a sentence someone has to trust into a record someone can inspect: which list, which version, what it contained, when it was fetched.

The other half is being able to re-run the same query against a specific past date and get the answer that was true then — delisted records included — not today's answer with today's date stamped on it. "What did we know about this counterparty on 14 March 2025?" has to be an answerable, reproducible question, not a reconstruction exercise.

What "we checked" needs to survive a review 18 months later

  • A timestamped, versioned record of what the list contained at screening time — not just today's list
  • The ability to re-run a past check against the list state as of that date, delisted records included
  • Never overwrite a prior version on sync — each load is its own dated snapshot
  • A negative result needs the same evidence discipline as a positive one, not less