--- id: fastexcel version: "0.20.2" license: unclear license_treatment: permissive maintenance: active --- # fastexcel — A fast excel file reader for Python, written in Rust License: permissive · Maintenance: active · Downloads: 3.3M/mo ## What it is and what it does fastexcel is a Python Excel reader written in Rust that prioritizes speed and memory efficiency. It reads .xlsx and .xls files and exposes data via the Arrow PyCapsule Interface, allowing zero-copy handoff to Arrow-compatible libraries. The core package is lightweight with only typing-extensions as a runtime dependency; optional extras add integration with external dataframe libraries. Typical use is to call read_excel() to open a file, load_sheet() or load_table() to select data, then access the raw Arrow interface via __arrow_c_schema__() and __arrow_c_array__(), or convert using library-specific methods. The PyCapsule design reduces dependency bloat when used with compatible consumers. Production-ready for Python; the free-threaded build remains experimental. Use it for: - Import Excel files into data pipelines where speed and memory efficiency are priorities. - Load Excel tables (named ranges) directly for structured data extraction. - Integrate Excel as a data source in applications requiring fast file reading. - Replace slower Excel readers in performance-sensitive batch processing jobs. - Access Excel data via the Arrow PyCapsule Interface for zero-copy integration. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Reads Excel files (.xlsx, .xls) into Python with zero-copy data exchange via the Arrow PyCapsule Interface, enabling direct use with compatible libraries without intermediate conversions. Yes, if you need fast Excel reading and want to minimize dependencies. The package is production-ready, actively maintained, has no known vulnerabilities, and offers genuine performance gains over standard libraries. Install friction is moderate but manageable via prebuilt wheels. Not necessary if you rarely read Excel or have no performance constraints. ## Install pip install fastexcel uv add fastexcel poetry add fastexcel ## Installing fastexcel Before you install: Medium install friction due to compiled Rust wheels, but prebuilt binaries cover common platforms (x86_64, ARM64, macOS, Linux, Windows). Active maintenance with last commit 2026-08-10. Single lightweight runtime dependency (typing-extensions). License in practice: MIT license (permissive) allows commercial and private use with minimal restrictions—standard open-source terms with no copyleft obligations. Quickstart: pip install fastexcel import fastexcel reader = fastexcel.read_excel("data.xlsx") sheet = reader.load_sheet(0) schema = sheet.__arrow_c_schema__() array_data = sheet.__arrow_c_array__() Requires Python 3.10 or later. Optional integration with external libraries (Pandas, Polars) requires their separate installation. Verify before relying: - Whether free-threaded build stability has improved since the experimental designation in the description. - Performance benchmarks comparing fastexcel to other Excel readers on typical workloads. - Support for Excel features beyond basic cell data (formulas, formatting, merged cells). - Actual zero-copy performance gains in real-world scenarios with different file sizes. ## Package facts - License: not declared (permissive) - Python support: supports_current - Install friction: medium - Maintenance: active - Downloads: 3.3M/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags excel file reader python, fast xlsx parser, excel import rust, arrow pycapsule interface, excel to dataframe, high performance excel reader, excel data loading, rust-backed, data-loading, arrow-native [View on SkillFed](https://skillfed.io/packages/fastexcel) · [View on PyPI](https://pypi.org/project/fastexcel/)