Every evaluation of these four ends up comparing detection accuracy, which is the one axis on which they are not really competing: they sit at three different boundaries — a vault that substitutes the value at collection, a transform that rewrites text on its way to the model, a platform that finds exposures already sitting in your SaaS — and the boundary, not the recall number, is what decides the risk you are left holding. Two of the four are classifiers, so a miss is a leak that nothing in the pipeline reports; and all four leave you with the same under-discussed artefact, a redacted trace that your incident response will one day need and no longer contains the evidence.
At a glance
Four tools that appear on the same shortlist and answer different questions. Sorted by where in the data's life they act.
| Tool | Shape | Delivery | Where it acts |
|---|---|---|---|
| Skyflow | Privacy vault — tokenise and store | Managed service with a governance layer | At collection, before the value reaches your systems |
| Presidio | Detection and anonymisation framework | Open source, MIT, self-hosted library or service | On the wire, wherever you call it |
| Limina (formerly Private AI) | De-identification models, packaged | Containers you run in your own environment | On the wire, with a commercial accuracy claim |
| Nightfall | Cloud DLP across SaaS, browser and endpoint | SaaS with policy and incident workflow | After the fact, wherever data has landed |
Presidio — deep dive
A framework, and the tuning is yours
Presidio is the open-source default, MIT-licensed, and in 2026 it moved out of Microsoft into the independent, community-governed Data Privacy Stack organisation — a transition worth knowing about if your procurement paperwork names the old owner, and a mild positive for anyone who worried about a single vendor's roadmap. Architecturally it is a set of recognisers feeding a set of operators: regular expressions, deny lists, checksums, context words and named-entity recognition decide what is sensitive; replace, redact, hash and encrypt decide what happens to it.
What free actually costs
The honest framing is that Presidio ships you the plumbing and leaves the accuracy to you. Out of the box it finds the obvious entity types in English; the customer reference format your billing team invented, the local identity-number scheme, the free-text field where agents type things they should not — those are recognisers you write, tune and regression-test. That is a real engineering commitment and it is also the only one of the four where you can inspect exactly why something was or was not caught, which for a regulated deployment is worth more than a few points of benchmark recall.
Limina — deep dive
The same boundary, bought instead of built
Limina is Private AI under a new name — the company rebranded in March 2026 — and it occupies the same position in the pipeline as Presidio with the trade reversed: you pay, and in exchange the entity coverage, the language coverage and the accuracy on messy real-world text arrive already tuned. It runs as containers in your own environment, which is the property that matters for buyers who cannot send raw text to a third party at all, and it is aimed squarely at healthcare, insurance and financial-services workloads where the entity list includes PHI and the tolerance for a miss is close to zero.
Where the money goes
The value is concentrated in two places that are easy to under-rate. The first is breadth: many entity types across many languages, maintained by someone else, which is the difference between a project that ships and a backlog of recogniser tickets. The second is reversibility — a de-identification pipeline built to put the values back is a different product from one built to destroy them, and the restore path is where home-grown implementations usually break.
Skyflow — deep dive
Not a better detector — a different claim
Skyflow is the odd one out and the most interesting of the four, because it is not trying to detect anything. A privacy vault holds sensitive values in an isolated store and hands your systems a token; your application, your logs, your analytics and your model prompts contain the token, and the real value is fetched only by a caller with an explicit policy grant. The security property does not depend on a classifier being right. It depends on the value never having been in your systems to leak, which is a categorically stronger statement than "our model has high recall".
The catch is architectural, not technical
You only get that guarantee for data you control the collection of. A vault does excellent work on the account numbers, card details and identity documents your product asks users for. It does nothing about the transcript of a support call, the contents of a customer's uploaded PDF, or the free text an employee pastes into an agent — data that arrives already mixed, which is precisely the data agentic workloads live on. Skyflow's 2026 direction acknowledges this, extending into enterprise AI search and runtime data controls for agent platforms, but the fundamental asymmetry stands: vaults are for data you asked for, detectors are for data that showed up.
Nightfall — deep dive
The unit of work is an incident, not a request
Nightfall is DLP in the classical sense, extended to the places work now happens: SaaS applications, the browser, the endpoint, with a single policy framework and — as of its 2026 direction — an autonomous triage layer for the alert queue. It is the only one of the four whose output is a workflow rather than a transformed string, and that is the tell for where it belongs. You do not put Nightfall in the path of a model call; you put it where you need to know that a payroll export is sitting in a shared drive, or that someone pasted a customer list into a chat.
What after-the-fact buys, honestly stated
Detection after landing cannot prevent an exposure, and a vendor who implies otherwise should be pushed on it. What it bounds is duration — how long sensitive data sits somewhere it should not — and duration is a legitimate control objective, particularly for the enormous surface of employee behaviour that no inline transform will ever see. Judge it on time-to-detection and on false-positive load on whoever works the queue, not on catch rate.
Cross-cutting comparison
Three boundaries, four products
Framed this way, most shortlist arguments dissolve. Comparing Skyflow's guarantee with Presidio's recall is comparing a structural property with a statistical one. Comparing Nightfall's coverage with Limina's accuracy is comparing an exposure-duration control with an exposure-prevention control. The genuine decision is which boundary carries most of your risk: if your sensitive data mostly arrives through forms you own, the vault is the strongest single move; if it mostly arrives inside unstructured content you did not author, you are buying a classifier whether you like it or not; if your problem is people rather than pipelines, neither helps and DLP does.
Two of them are classifiers, and the error that costs you is the quiet one
Presidio and Limina are detectors, which means the arithmetic that governs every detector governs them — and with the asymmetry pointing the opposite way from an injection classifier. There, a false positive is the expensive error, because blocking legitimate traffic is visible. Here the expensive error is the false negative: the identifier that was not recognised is forwarded verbatim to the model, written into the provider's logs and possibly into somebody's training corpus, and nothing in the pipeline emits a signal. A redaction system fails silently by construction, so a dashboard showing entities redacted per hour is a picture of what it caught and tells you nothing about what it missed. The only honest measurement is a blind, uniformly sampled human review of the post-redaction stream, priced and scheduled like any other recurring cost. This is the same discipline as evaluating guardrails and detectors, applied to the error that does not page anyone.
Redaction is lossy on purpose, and the loss lands somewhere
Three costs come with the transform and none of them appear in a vendor comparison. The first is task quality: an agent that receives PERSON_1 cannot address the customer by name, and if the same person is tokenised inconsistently across two documents it cannot tell they are the same person — a support agent quietly loses the ability to say "this is the third time you've written to us". The second is your own forensics: the trace store keeps the redacted copy, so when you investigate an incident six weeks later, the evidence was removed by a control you deployed on purpose, and PII redaction in agent traces is precisely the trade-off to make deliberately rather than by default. The third is the placeholder map, which is a re-identification key for every conversation that used it, needs its own access policy and retention rule, and is the artefact that turns a redaction project into a data-governance project.
When to pick which
| Situation | Pick | Because |
|---|---|---|
| You control the forms the sensitive data arrives through | Skyflow | A guarantee beats a classifier, and it is the only one offering one. |
| Unstructured text you did not author, budget is tight, engineers available | Presidio | MIT-licensed, fully inspectable, and the tuning is work you would do anyway. |
| Regulated data, many languages, and a miss is a reportable event | Limina | Coverage and a maintained restore path are the two things hardest to build. |
| The exposure is employees and SaaS, not your model calls | Nightfall | Nothing inline sees that surface; duration is the control you can actually get. |
| Regulated data that must never leave your jurisdiction at all | Presidio or Limina, self-hosted | The transform has to run where the data already is — see data residency. |
FAQ
Can I just prompt the model to ignore personal data?
No. The data has already left your network by the time the model reads the instruction, so the prompt does nothing about the provider's logs, your own trace store, or a subprocessor. Redaction is a control on the wire or it is not a control.
Is Presidio good enough for production?
It is good enough to build on, and thousands of deployments do. What it is not is good enough untuned: budget for writing recognisers for your own identifier formats and for a regression set that keeps them honest, and treat any published accuracy figure as a statement about someone else's data.
Does a vault remove the need for a detector?
Only for the fields it holds. The moment your agent reads a support transcript, a scanned document or a free-text note, you are back to detection — which is why the two are usually deployed together rather than chosen between.
How should I measure a redaction pipeline?
On the miss rate, estimated from a blind sample of real post-redaction traffic, not from a benchmark; on the false-positive damage, which shows up as agents that cannot do their job; and on restore correctness, which nobody tests until a customer is shown someone else's name.
Does redaction satisfy a regulator?
It depends entirely on whether the result is anonymous or merely pseudonymous, and a reversible placeholder map means pseudonymous — the data is still personal data and the obligations still apply. Treat redaction as risk reduction and defence in depth, and settle the legal question with counsel against your actual configuration.
Further reading
On this wiki:
- PII redaction in agent traces — the trade between privacy and your own debuggability.
- Evaluating guardrails and detectors — why recall is the number that does not transfer.
- Data exfiltration and tool misuse — the sinks a redaction layer does not close.
- Data residency and sovereignty — when the transform has to run in a particular place.
- Data governance — where the placeholder map ends up on the register.
Project sources:
- Presidio — Data Privacy Stack
- Limina — formerly Private AI
- Skyflow
- Nightfall AI