Skip to content
SPECIFICTION
Get listed

csvkit

csvkit.readthedocs.io

Free plan WindowsmacOSLinux

What it is

csvkit is a suite of command-line tools for converting, processing, and analyzing CSV files. Its commands include importing, cleaning, selecting columns, filtering, joining, sorting, and stacking data, as well as formatting and analysis. The in2csv command converts Excel XLS/XLSX, JSON, and fixed-width files to CSV. For database work, csvsql can query CSV data with SQL and import it into PostgreSQL; sql2csv extracts query results from PostgreSQL. Database connections use SQLAlchemy dialects, with PostgreSQL and MySQL listed in troubleshooting guidance. By default, delimiter detection uses the first 1024 bytes of input. The tools also infer types such as numbers, dates, and booleans, though that inference can be wrong. csvkit runs on Linux, macOS, and Windows with a supported Python version; current project metadata requires Python 3.10 or later. Some commands buffer entire files in memory, so large inputs can reach the toolkit's limits. Installation options include pip and Homebrew, and the project recommends virtual environments. It is self-hosted, code-driven, and released under the MIT License without warranty.

Spec sheet

What it does
csvkit is a suite of command-line tools for converting to and working with CSV files.Read 1 Oct 2026 · csvkit.readthedocs.io
Support
User support is provided through the documentation, GitHub issues, and community contributions.Read 1 Oct 2026 · csvkit.readthedocs.io
Database integrations
Database connections use SQLAlchemy dialects; the troubleshooting guide specifically lists PostgreSQL and MySQL backends.Read 1 Oct 2026 · csvkit.readthedocs.io
File conversion
in2csv converts Excel XLS/XLSX, JSON, and fixed-width files to CSV.Read 1 Oct 2026 · csvkit.readthedocs.io
Format detection
csvkit sniffs delimiters using the first 1024 bytes of input by default.Read 1 Oct 2026 · csvkit.readthedocs.io
Input tools
Its input tools include in2csv and sql2csv.Read 1 Oct 2026 · csvkit.readthedocs.io
Installation
The project documents installation with pip, recommends virtual environments, supports Homebrew installation, and offers an optional Zstandard extra.Read 1 Oct 2026 · csvkit.readthedocs.io
Maintenance scope
The maintainers say csvkit generally no longer adds new tools because of limited maintenance time and a desire to keep the toolkit focused.Read 1 Oct 2026 · csvkit.readthedocs.io
Output and analysis
Its output and analysis tools include csvformat, csvjson, csvlook, csvpy, csvsql, and csvstat.Read 1 Oct 2026 · csvkit.readthedocs.io
Performance limits
Some tools stream rows, while others buffer entire files in memory; the documentation says large files may reach csvkit's limits.Read 1 Oct 2026 · csvkit.readthedocs.io
Processing tools
Its processing tools include csvclean, csvcut, csvgrep, csvjoin, csvsort, and csvstack.Read 1 Oct 2026 · csvkit.readthedocs.io
Runtime requirement
The current project metadata requires Python 3.10 or newer.Read 1 Oct 2026 · github.com
Security and licensing
csvkit is released under the MIT License and the license states the software is provided as-is without warranty.Read 1 Oct 2026 · csvkit.readthedocs.io
SQL workflows
csvsql can query CSV data with SQL and import it into PostgreSQL, while sql2csv extracts query results from PostgreSQL.Read 1 Oct 2026 · csvkit.readthedocs.io
Supported systems
The documentation states csvkit is supported on non-end-of-life Python versions on Linux, macOS, and Windows.Read 1 Oct 2026 · csvkit.readthedocs.io
Target users
Project metadata identifies developers, end users/Desktop, and science/research users as intended audiences.Read 1 Oct 2026 · github.com
Type inference
csvkit automatically infers numbers, dates, booleans, and other data types, and the documentation warns that inference can occasionally be erroneous.Read 1 Oct 2026 · csvkit.readthedocs.io

Plans and prices

Open-source csvkit Free Free of charge under the MIT License Command-line toolkit · no paid tiers stated Read 1 Oct 2026 · csvkit.readthedocs.io

Every csvkit plan and price →

Strong points and limits

Strong points

  • Converts Excel, JSON, and fixed-width files
  • Includes commands for cleaning and joining data
  • Can query CSV data with SQL
  • Available on Linux, macOS, and Windows

Limits

  • Requires Python 3.10 or newer
  • Some tools buffer entire files in memory
  • Type inference can be wrong

Who it suits

csvkit suits developers, desktop users, and science or research users who work with CSV data through command-line workflows. It also offers SQL-based options for PostgreSQL workflows.

Verdict

csvkit brings a wide range of CSV operations into a command-line toolkit, including conversion and database workflows. Consider its Python requirement and memory limits when working with large files.

Where Specifiction places it

Alternatives to csvkitAll alternatives →