DataFrames for
the new era

Downloads to date
Github stars
Get started
Data swooshes

Polars is written from the ground up with performance in mind. Its multi-threaded query engine is written in Rust and designed for effective parallelism. Its vectorized and columnar processing enables cache-coherent algorithms and high performance on modern processors.

Easy to use02Easy to use

You will feel right at home with Polars if you are familiar with data wrangling. Its expressions are intuitive and empower you to write code which is readable and performant at the same time.

Open source03Open source

Polars is and always will be open source. Driven by an active community of developers, everyone is encouraged to add new features and contribute. Polars is free to use under the MIT license.

Built by developers for developers to achieve up to 50x performance

Why use Polars

Polars was benchmarked against several other solutions on the independent TPC-H Benchmark. This benchmark aims to replicate data wrangling operations used in practice. Polars easily trumps other solutions due to its parallel execution engine, efficient algorithms and use of vectorization with SIMD (Single Instruction, Multiple Data). Compared to pandas, it can achieve more than 30x performance gains.

Learn more →

The benchmark was performed on a c3-highmem-22 with scale factor 10 including I/O. The queries are open source.

Performance illustration

Quick install

Polars is easy to install using your standard package manager. Select your programming language and get started!

pip install polars
polars = { version = "x", features = ["lazy", ...]}
const pl = require('nodejs-polars');

Leading companies using Polars in production

OptiverAlbert HeijnCheckG-ResearchAppianShowmaxKPNUCSF

"Polars revolutionizes data analysis, completely replacing pandas in my setup. It offers massive performance boosts, effortlessly handling data frames with millions of rows. Allowing us to focus on crafting simpler, cleaner code. This efficiency drastically cuts down iteration time, driving improved trading decisions. And speed? Polars isn't just fast—it's lightning-fast."

Matt Whitehead

Quantitative Researcher @ Optiver

" Migrating from pandas to Polars was surprisingly easy. For us, the results speak for themselves. Polars not only solved our initial problem but opened the door to new possibilities. We are excited to use Polars on future data engineering projects. "

Paul Duvenage

Senior Data Engineer @ Check

"The speedup of Polars compared to Pandas is massively noticeable. I generally enjoy writing code that I know is fast."

Casey H.

Machine Learning Engineer @ G-Research

Support 1
Support 2
Support 3
Support 4
Support 5
Support 6
Support 7
Support 8
Support 9
Support 10
Support 11
Support 12
Support 13
Support 14
Support 15
Support 16


Support for all common data formats

Polars supports reading and writing to all common data formats. This allows you to easily integrate Polars with your existing data stack.

  • Text: CSV & JSON
  • Binary: Parquet, Delta Lake, AVRO & Excel
  • IPC: Feather, Arrow
  • Databases: MySQL, Postgres, SQL Server, Sqlite, Redshift & Oracle
  • Cloud storage: S3, Azure Blob & Azure File

How Polars will
make your life easier


to use

Write your queries the way they were intended. Polars will determine the most efficient way to execute them using its query optimizer.



Complete your queries faster! Polars fully utilizes the power of your machine by dividing the workload among the available CPU cores without any additional configuration or serialization overhead.



Polars utilizes the Apache Arrow memory model allowing you to easily integrate with existing tools in the data landscape. It supports zero-copy data sharing for efficient collaboration.


Close to
the metal

Polars is written from the ground up, designed close to the machine and without external dependencies. This allows for full control of the ecosystem (API, memory & execution).


in Rust

The core of Polars is written in Rust, one of the fastest growing programming languages in the world. Rust allows for high performance with fine-grained control over memory.


of core

Want to process large data sets that are bigger than your memory? Our streaming API allows you to process your results efficiently, eliminating the need to keep all data in memory.