csvkit
What it is
csvkit is a free suite of command-line tools for converting to and working with CSV files on Linux, macOS, and Windows. Its commands cover common data tasks: in2csv converts formats such as Excel, JSON, and fixed-width files to CSV, while csvcut selects, deletes, or reorders columns. csvlook displays tabular data in the command line, and csvstat produces summary statistics. Other commands find matching rows, sort records, merge related data with csvjoin, and combine subsets with csvstack. For SQL workflows, csvsql can query CSV data and import it into PostgreSQL; sql2csv exports query results to CSV. csvjson converts CSV to JSON and can also produce GeoJSON. Commands accept standard input and output, so users can connect them into repeatable pipelines. By default, csvkit infers a file’s format from its first 1024 bytes and infers cell types, with options to disable either behavior. Installation instructions include pip and Homebrew and recommend a virtual environment. The tutorial assumes basic command-line familiarity. The project notes that it can reach performance limits with faster processing or larger files, and its MIT license provides the software without warranty.
For and against
For
- Converts Excel, JSON, and fixed-width files to CSV
- Includes column editing and summary statistics tools
- Supports SQL queries and PostgreSQL imports
- Commands can be joined into data pipelines
- Runs on Linux, macOS, and Windows
Against
- May reach performance limits with larger files
- Project generally no longer adds new tools
- Software is provided without warranty
The verdict
csvkit offers a broad set of free command-line utilities for CSV and related data workflows. Its documentation flags performance limits for larger or faster processing needs.
Who it suits
csvkit suits people comfortable with basic command-line use who need a free toolkit for CSV conversion, inspection, and data processing.
Plans and prices
csvkit
MIT-licensed software · no paid tiers stated
Read 7 Oct 2026 · csvkit.readthedocs.io
On the record
- Column editing
- csvcut can select, delete, and reorder CSV columns.csvkit.readthedocs.io · read 7 Oct 2026
- Combining data
- csvjoin merges related data, while csvstack combines subsets.csvkit.readthedocs.io · read 7 Oct 2026
- Command pipelines
- The tools accept standard input and output, allowing commands to be piped together into repeatable data-processing workflows.csvkit.readthedocs.io · read 7 Oct 2026
- Data inspection
- csvlook displays CSV data in the command line, and csvstat generates summary statistics.csvkit.readthedocs.io · read 7 Oct 2026
- File conversion
- in2csv converts common formats including Excel, JSON, and fixed-width files to CSV.csvkit.readthedocs.io · read 7 Oct 2026
- Filtering and sorting
- The suite includes tools to find matching rows and sort data.csvkit.readthedocs.io · read 7 Oct 2026
- Format detection
- By default, csvkit infers CSV format from the first 1024 bytes and infers cell types, with options to disable both behaviors.csvkit.readthedocs.io · read 7 Oct 2026
- Installation
- The documentation gives pip and Homebrew installation commands and recommends using a virtual environment.csvkit.readthedocs.io · read 7 Oct 2026
- Intended users
- The tutorial assumes basic command-line familiarity and says no prior experience with data processing or analysis is assumed.csvkit.readthedocs.io · read 7 Oct 2026
- JSON and GeoJSON
- csvjson converts CSV to JSON and can also output GeoJSON.csvkit.readthedocs.io · read 7 Oct 2026
- Performance limit
- The documentation says csvkit may reach its limits for faster processing or larger files and suggests loading data into SQL or considering qsv or xsv.csvkit.readthedocs.io · read 7 Oct 2026
- Purpose
- csvkit is a suite of command-line tools for converting to and working with CSV files.csvkit.readthedocs.io · read 7 Oct 2026
- Security and warranty
- The MIT license states that the software is provided as is without warranty; the opened project pages do not state security certifications or compliance claims.csvkit.readthedocs.io · read 7 Oct 2026
- SQL and databases
- csvsql can query CSV data with SQL and import it into PostgreSQL, while sql2csv can extract query results to CSV.csvkit.readthedocs.io · read 7 Oct 2026
- Support and maintenance
- The project welcomes bug fixes and documentation updates, and maintainers offer feedback and code review for larger features; it says new tools are generally no longer added due to limited maintenance time and a desire to keep the toolkit focused.csvkit.readthedocs.io · read 7 Oct 2026