Data scrubber

Working demo · deterministic, no AI

Strip names, contact details, addresses, legal descriptions and NZ identifiers out of a consent application before any AI reads it. Fixed rules only: the same input always gives the same output.

This demo accepts PDFs up to 40 MB, sent in 2 MB pieces. The boxed viewing copy comes back only when the answer fits under the hosting platform's 4.5 MB cap; the scrubbed text always does. Larger sets are handled in the production version; the offline command-line version has no limit.

Your file is stored in our database for up to 24 hours, then deleted. You can delete it now after the run.

Open the original sample PDF to compare it with the scrubbed one. Everything in the sample is invented.

In plain English

What it removes

  • Email addresses, and NZ phone numbers: landlines, 02x mobiles, 0800/0508 and +64 forms.
  • IRD numbers (checked against Inland Revenue's check-digit rule unless labelled “IRD”), GST numbers written next to “GST”, NZ bank account numbers and NZBNs.
  • Street addresses that start with a number and end in a street type (Street, Road, Lane, Terrace ...), with the suburb, town, RD and postcode that follow; PO Boxes and Private Bags.
  • Legal descriptions: Lot N DP NNNN, Section N Block N (Survey District / Town of), and Record of Title references such as OT12A/345.
  • LBP numbers (LBP 123456, BP123456) and consent references (BC240123, RC-2024-0345, RM240123, PIM 2301234).
  • Names with a title (Mr, Mrs, Ms, Dr), names after a label (Owner:, Applicant:, Agent:, Contact:, Drawn:, Checked by: ...), and two- or three-word names where one word is a known NZ given name or surname. Every later mention of the same FULL name (any case, “Smith, John”, or “J Smith” when only one person has that initial) gets the same Person N, and different people get different numbers.
  • Every exact match from the client and staff lists you supply, in any case.
  • From a PDF: the document metadata (Title, Author, Subject, Keywords, Creator, Producer, dates, XMP), bookmarks, embedded files, form fields, comments and links, and any object no longer used by the pages.

What it does not

  • It does not read images. A scanned page with no text layer is counted as “no text layer”, and the document is never declared clean. But an image on a page that also has text (a pasted signature, a scanned stamp, a site photo) is not covered by the text scan, and that page can still be reported clean; the report lists the pages with embedded images.
  • It does not rewrite the PDF's text layer. Black boxes cover the matches, but the words are still in the file underneath. The scrubbed text is what goes to a model; the scrubbed PDF is for people to look at.
  • It cannot know every name. A name with no title, no label, not on your lists, and not in its list of common NZ names is left in. Supply the client and staff lists.
  • It does not replace a surname or first name on its own (“Smith rang”, “with Hemi”): only full names. Single words collide with drawing vocabulary (Wood framing, Douglas Fir, Victoria Ash), and timber species, materials and trades are never read as names. Put a surname that must go on the client or staff list.
  • It does not catch an identifier split across two lines, written in words (“oh two one ...”), or misspelt.
  • It may over-redact: a street called after a person, or a product named after one, can be replaced. That is deliberate: removing too much is cheap, leaking a person is not.
  • It uses no AI and makes no network call. Everything it does is the fixed rules above.