Freedom251 › Data Deduplication Software
Splink

What Splink is
Splink is a Python package for probabilistic record linkage: it finds duplicate or related records when there are no unique identifiers. Its core algorithm follows the Fellegi–Sunter model, and it can train models without supplied training data using an unsupervised approach. Matching can include term-frequency adjustments and user-defined fuzzy logic, while interactive outputs help inspect models and diagnose linkage problems. The project documents DuckDB, Spark, PostgreSQL, and SQLite backends; DuckDB is installed by default, with optional installs for Spark and PostgreSQL. It can be installed with pip or conda and supports Python 3.10 or later. The project says it can link a million records on a laptop in around a minute, and run with big-data backends such as Spark on datasets of 100 million or more records. Splink works best with standardised data across multiple columns that are not highly correlated. It is not designed for a single bag-of-words column, such as company names without other details. The software is free under the MIT license and is available for Linux and self-hosted use.
Who it suits
Splink suits developers and data teams linking or deduplicating records across public-sector, academic, or business datasets. It is best suited to standardised records with multiple, not highly correlated columns.
What it does well
- Trains models without training data.
- Supports term-frequency adjustments and fuzzy logic.
- Offers DuckDB, Spark, PostgreSQL, and SQLite backends.
- Interactive outputs help diagnose linkage problems.
- Free software under the MIT license.
What to know first
- Requires Python 3.10 or later.
- Not designed for a single bag-of-words column.
- Works best with standardised, multiple-column data.
Limits
Splink is not designed to link a single column containing a bag of words. Its best fit is standardised data with multiple columns that are not highly correlated.
Plans
| Plan | Billed and limits | Price |
|---|---|---|
| Splink | Free software · Python package · MIT license | Free |
As github.com lists them, read 7 Oct 2026. The maker's own page has the final word.
Getting started
- Visit the Splink GitHub website.
- Use Linux or a self-hosted environment.
- Install Splink with pip or conda in Python 3.10 or later.
- Use DuckDB by default, or install optional Spark or PostgreSQL support.
- Consult the documentation, then use the GitHub discussion forum for questions.
Verdict
Splink provides flexible record linkage for datasets with useful structured fields, from laptop-scale work to big-data backends. Its input-data requirements make it a poor fit for matching a lone text column.
Questions
How much does Splink cost?
The listed plan is free. Splink is free software under the MIT license.
Is there a free plan or trial?
A free plan is listed. There is no free trial.
Which backends does Splink support?
The documentation describes DuckDB, Spark, PostgreSQL, and SQLite. DuckDB is installed by default; Spark and PostgreSQL have optional installs.
What platforms and Python versions does it support?
The listed platforms are Linux and self-hosted. Splink supports Python 3.10 or later.
Is Splink open source?
The GitHub repository lists Splink under the MIT license.
What kind of data is it suited to?
It works best with standardised data containing multiple columns that are not highly correlated. It is not designed for a single bag-of-words column.
Facts from Splink's own pages
- Algorithm
- Splink’s core linkage algorithm is based on the Fellegi-Sunter model of record linkage. · moj-analytical-services.github.io, 7 Oct 2026
- Audience
- The project lists government, academia, and private-sector use, with examples across public services, health, research, and business data. · github.com, 7 Oct 2026
- Backends
- The documentation describes DuckDB, Spark, PostgreSQL, and SQLite backends; DuckDB is installed by default, while Spark and PostgreSQL have optional installs. · moj-analytical-services.github.io, 4 Oct 2026
- Data requirements
- Splink works best with standardised data containing multiple columns that are not highly correlated. · moj-analytical-services.github.io, 7 Oct 2026
- Data suitability
- Splink works best with standardised data containing multiple columns that are not highly correlated, and is not designed for a single bag-of-words column. · moj-analytical-services.github.io, 4 Oct 2026
- Install
- The project documents installation with pip or conda and optional Spark and PostgreSQL backend extras. · github.com, 7 Oct 2026
- Installation
- Splink can be installed with pip or conda and supports Python 3.10 or later. · moj-analytical-services.github.io, 4 Oct 2026
- Interactive outputs
- Splink provides interactive outputs to help users understand models and diagnose linkage problems. · moj-analytical-services.github.io, 4 Oct 2026
- License
- The GitHub repository identifies Splink as MIT licensed. · github.com, 7 Oct 2026
- Limitation
- Splink is not designed to link a single column containing a bag of words, such as company names without other details. · moj-analytical-services.github.io, 7 Oct 2026
- Matching
- It supports term frequency adjustments and user-defined fuzzy matching logic. · github.com, 7 Oct 2026
- Matching features
- It supports term-frequency adjustments and user-defined fuzzy-matching logic. · moj-analytical-services.github.io, 4 Oct 2026
- Matching model
- Its core linkage algorithm is based on the Fellegi–Sunter model. · moj-analytical-services.github.io, 4 Oct 2026
- Outputs
- Interactive visualisations help users understand models and diagnose linkage problems. · moj-analytical-services.github.io, 7 Oct 2026
- Purpose
- Splink is a Python package for probabilistic record linkage that deduplicates and links records without unique identifiers. · github.com, 4 Oct 2026
- Scale
- Linkage jobs can run with DuckDB or big-data backends such as Spark for 100+ million records. · github.com, 7 Oct 2026
- Speed
- The project says Splink can link a million records on a laptop in around a minute. · github.com, 7 Oct 2026
- Support
- The documentation directs users with questions to the project’s GitHub discussion forum. · moj-analytical-services.github.io, 7 Oct 2026
- Training
- Models can be trained using an unsupervised approach without training data. · moj-analytical-services.github.io, 7 Oct 2026
- Unsupervised training
- Splink can train models using an unsupervised approach without training data. · moj-analytical-services.github.io, 4 Oct 2026
- What it does
- Splink is a Python package for probabilistic record linkage that deduplicates and links records without unique identifiers. · github.com, 7 Oct 2026
- Who uses it
- The project lists users and use cases across public-sector organisations, academia, and other sectors. · moj-analytical-services.github.io, 4 Oct 2026
Where Splink stands on Freedom251
- Data Deduplication Software#14 of 27