Data cleaning

Company data, made safe. Still worth training on.

We take the personal and confidential details out of your email, chat and documents and put realistic stand-ins in their place. The same person stays the same person in every file, so the data keeps its meaning.

Your raw workspaceEmail, chat, documents, spreadsheets, scans
Everything sensitive foundPeople, companies, addresses, IDs, passwords, keys
Replaced, not blankedRealistic stand-ins, one per person, everywhere
Delivered with the recordWhat was found, what replaced it, how it was checked

Who asks for it

Four reasons to clean company data

Train on it, sell it or buy it: the step that blocks you is the same. Find what is sensitive and replace it the same way in every file.

Train your own models

Your mail, chat and tickets show how your work is really done. Cleaned, your AI team can train on them without a privacy check on every file.

Sell or license what you hold

A buyer pays for who asked, who answered and what happened next. We keep that and take the real people out.

Clean data you bought

Not sure what is inside a data set you acquired? Run it through us before it reaches your training machines.

A company that is closing

Years of mail, chat and documents still have value. We clear the whole workspace in one pass so it can be licensed.

What we do

De-identification that keeps the signal

We replace every sensitive value with a made-up one of the same kind, and use that same replacement wherever it appears. Here is what that looks like.

One made-up person everywhere the real one appears

A person is a full name in an email, a nickname in chat, an initial in a report and a staff number in a spreadsheet. We link all of them to one person first, then give that person a single stand-in identity.

  • The same stand-in in every thread, attachment and file name
  • Unclear matches go to you to settle, not to a guess
Original
Full nameMargaret Holloway
Nickname in chatMaggie
Initial in a reportM. Holloway
Emailmargaret.holloway@northfieldfreight.com
File nameMargaret_Holloway_review.txt
Staff numberEMP-00847
One stand-in identity
Full nameMarcia Harmon
Nickname in chatMarcia
Initial in a reportM. Harmon
Emailmarcia.harmon@northernferryfreight.com
File nameMarcia_Harmon_review.txt
Staff numberEMP-28714

Stand-ins that keep their shape

An email address is still an email address. A phone number keeps its area code and reads the same however it was typed. A customer number keeps its format, so the programs that read the data afterwards see normal text, not gaps.

Dates in a project all move back by the same number of whole weeks. A Thursday is still a Thursday and events stay in order.

Original
Emaildaniel.ortega@northfieldfreight.com
DateThu, 14 Mar 2024
Phone(312) 555-0148
Same phone, typed another way312-555-0148
Customer numberNF-204471
Social Security number536-80-4471
Stand-in
Emaildouglas.odonnell@northernferryfreight.com
DateThu, 06 Apr 2023
Phone(312) 063-7083
Same phone, typed another way312-063-7083
Customer numberNF-652328
Social Security number486-34-6596

Stand-ins that sound like the original

A made-up name keeps the first letter, the gender and roughly the length of the real one. A company keeps its first letter. A town stays in its state.

Names, companies and towns are ordinary English names and words, never random letters, so the text still reads the way people write.

Original
PersonMargaret Holloway
PersonDaniel Ortega
PersonPriya Raman
CompanyNorthfield Freight
CompanyBlue Kite Logistics
TownEvanston, IL
Address482 Maple Avenue, Suite 210, Springfield, IL 62704
Stand-in
PersonMarcia Harmon
PersonDouglas Odonnell
PersonPeggy Rangel
CompanyNorthern Ferry Freight
CompanyBrave Ivy Logistics
TownEffingham, IL
Address684 Marsh Avenue, Suite 133, Shelbyville, IL 62789

Found where identity hides

The body of a message is the easy part. Identity also sits in the places most tools never look, and we clean those too.

  • Email headers, message IDs and signature blocks
  • Chat user IDs, handles and time stamps
  • File names, authors, comments and tracked changes
  • Text inside pictures and scans
Original
Message ID<a1b2c3@northfieldfreight.com>
Chat user IDU04DORTEGA
Chat handle@dan.ortega
Chat time stamp1710425520.000100
Phone in a signature+1 312 555 0113
Export file name2024-03-14.json
Stand-in
Message ID<h7n3m4@northernferryfreight.com>
Chat user IDU35XVGZODD
Chat handle@douglas.odonnell
Chat time stamp1680790320.000100
Phone in a signature+1 312 026 7435
Export file name2023-04-06.json

Passwords and keys

Database links, API keys, tokens and passwords pasted into a chat are found and swapped for harmless look-alikes of the same form.

Beforepostgres://nf_admin:Tulip-River-88@db.northfieldfreight.com:5432/freight
Afterpostgres://noah_allen:Boulder-Arbor-55@db.northernferryfreight.com:5432/freight

Sensitive topics

Health, religion, politics and similar details are swapped for another of the same category, or only labelled. You choose which.

BeforeI am seeing my doctor about my asthma.
AfterI am seeing my doctor about my bronchitis.

Your own kinds

Project code names, customer references, anything your team calls sensitive: give us a word list or a pattern and it is replaced alongside the standard set.

BeforeSubject: Project Lantern - renewal for Blue Kite Logistics
AfterSubject: Compass Breeze - renewal for Brave Ivy Logistics
Yoursproject nameStandardcompany

Labelled for AI teams

Every replacement carries its kind and the made-up person or company it belongs to, so the cleaned data arrives annotated for training and evaluation.

Cleaned text with its labelsI spoke to Peggy Rangel at Brave Ivy Logistics on 2023-04-04
PERSONE-db1b08ac7b4eORGANIZATIONE-b78ed32011a6DATE_TIMEE-7cffdee14c04

Every example on this page is real output from our engine, run on a made-up company. Stand-ins differ from project to project, because each project has its own key.

Why replace, not remove

The same two lines, three ways

A model learns from who said what to whom. Black out the names and that is gone.

OriginalNot safe to share
EmailI spoke to Priya Raman at Blue Kite Logistics on 2024-03-12 about the renewal for customer NF-204471.
Chat, the same dayI opened ticket NF-204471 and will close it today.

A real person and a real customer, in plain sight.

Blacked outSafe, but empty
EmailI spoke to at on about the renewal for customer .
Chat, the same dayI opened ticket and will close it today.

Is it the same customer in both? Nobody can tell, and neither can a model.

Cleaned by TervelSafe and still useful
EmailI spoke to Peggy Rangel at Brave Ivy Logistics on 2023-04-04 about the renewal for customer NF-652328.
Chat, the same dayI opened ticket NF-652328 and will close it today.

Still the same customer in both, and no real person in either.

How we do it

Five steps from raw to cleared

You share a sample. We show you the result on your own data before the full run.

1

Scope and sample

We list every source and format and tell you where the sensitive data sits. Then we clean a sample.

  • NDA before anything moves
  • Results on your own sample first
2

Map the people

Each person’s full name, nicknames, addresses and handles are linked into one identity before anything is replaced.

  • You settle the unclear matches
  • The map is encrypted
3

Find and replace

Rules and language models find what is sensitive. Each value gets one stand-in, reused everywhere.

  • Several layers of detection
  • Attachments and file names included
4

Measure

A separate model reads the cleaned output and reports anything that still looks real. We fix it and run again.

  • A consistency check that must show zero conflicts
  • The numbers shown to you
5

Deliver

You get the cleaned files and the record behind them, ready for training or for a buyer’s review.

  • Files in their original formats
  • Labels and annotations
  • A record of every change

What we clean

The files a company actually has

Email

Mailboxes and single messages, Outlook included, with their headers and attachments.

Chat

Slack exports and other chat logs, with the files people shared in them.

Documents

PDF, Word and PowerPoint, including comments, tracked changes and author names.

Spreadsheets and exports

Excel, CSV and JSON, cell by cell, with the same person matched across sheets.

Scans and pictures

Text inside images is read, replaced and redrawn, in scans, screenshots and pictures placed in documents.

File names and properties

A résumé named after its owner is still personal data. Names of files and hidden properties are cleaned too.

Why ask us

Safe to share, and you can show how

Company data is the most useful data there is for AI, and the hardest to release. We do the part that blocks it.

  • No outside AI service sees your data: every model runs on machines we control
  • The key that links real values to stand-ins is encrypted. Destroy it and the link is gone for good
  • We measure on your sample and show you the numbers before the full run
  • You get a record your legal team and your buyer can read
  • If you decide to sell or license the data, our data broker service takes it from there
Cleaning reportChecked twice
PeopleOne identity each
Names, emails, phonesReplaced
Companies and domainsReplaced
Passwords and keysReplaced
File namesReplaced
Consistency conflicts0
Sample layout. Your report lists what was found in your data and what a second read still flagged.
Request a cleaning

Tell us what needs cleaning.

A rough idea is enough. We reply with how we would approach it and what a sample run would show.

  • NDA before you share anything
  • A sample cleaned first, with the result in front of you
  • Your data is never used for anything else

We only use these details to reply to you.

FAQ

Questions before you share a file

What legal, security and data teams ask us first.

No tool finds everything, and we will not tell you 100%. On test sentences we did not write ourselves, the engine currently finds about nine in ten sensitive items with very few false alarms. Names and contact details do best; company names are the hardest. That is why every job ends with a second read by a separate model, and why we clean your sample first and show you the numbers.

A model learns from who said what to whom. If every name becomes a blank, that is lost. A stand-in that is the same in every file keeps the thread of a conversation, the owner of a ticket and the author of a document, without pointing to a real person.

A general AI model is good at spotting a name and poor at replacing it the same way twice. It has no memory from one file to the next, so one person can come out as several different people. Our engine keeps one record per person and per value for the whole project and counts every conflict. And none of your data is sent to an outside AI service.

That depends on the data, the country and who receives it, and it is a decision for your lawyers. What we give them is something concrete to decide on: what was found, what replaced it and how the result was measured.

Yes. Models have been shown to repeat pieces of their training text word for word, and there is no reliable way to take one example back out afterwards. That is why the cleaning has to happen before training, not after.

No. Detection and replacement run on machines we control, with models we host ourselves. The engine is built to be self-hosted, so for sensitive projects it can run inside your own environment.

Only with the project key. The map from real values to stand-ins is kept encrypted, so you can trace a record back if you ever need to. Delete the key and the cleaning becomes one-way.

Text inside scans, screenshots and pictures in documents is read and replaced. Faces and voices are a different job; tell us what you have and we will say what is possible.

English today. Other languages are in progress; ask us about yours.

It depends on how much of your data is text and how much is scans, so we quote after the sample. You see the price before the full run starts.