Skip to content
Hero Background Light

Know your data. Cast with confidence.

Open-source tools for analysts who need to understand their data before they query it.

Point FineType at a CSV. Get the semantic type and confidence score for every column.

$ finetype profile -f contacts.csv
Column Type Confidence
──────────── ────────────────────────────────── ──────────
name identity.person.full_name 0.92
email identity.person.email 0.99
created_at datetime.timestamp.iso_8601 0.98
ip_address technology.internet.ip_v4 0.97
amount representation.numeric.decimal 0.94

Is that column of numbers a postal code, a year, or a price? Are those dates US or European? FineType detects 209 semantic types and maps each one to a DuckDB expression — so your casts work on every row, not just the first ten.

Point FineType at a CSV. Get a DuckDB CREATE TABLE statement — every column typed, every cast guaranteed to succeed.

$ finetype schema-for -f contacts.csv
CREATE TABLE contacts (
id BIGINT, -- increment
name VARCHAR, -- full_name
email VARCHAR, -- email
created TIMESTAMP, -- strptime(created, '%Y-%m-%dT%H:%M:%SZ')
ip VARCHAR, -- ip_v4 (INET)
amount DECIMAL(10,2) -- decimal
);

What you get

Every type prediction is a guarantee, not a guess.

209 Semantic Types

Dates, emails, IPs, UUIDs, coordinates, phone numbers, and financial identifiers — across 7 domains and 65+ locales.

Guaranteed Casts

Every type maps to a DuckDB SQL expression. Profile your data, then cast with confidence. No more surprises at row 47,000.

Fast and Local

Pure Rust, no Python. 600+ classifications per second, 8.5 MB memory. Runs on your laptop — no cloud required.

Get started

FineType is free, open source (MIT), and ready to use.

Install & First Workflow

Install FineType and DuckDB, profile your first dataset in five minutes. Get started →

FineType Reference

Full CLI, DuckDB extension, taxonomy, and performance benchmarks. Read the docs →