Parquet Validator
Drop any .parquet file to instantly inspect its structure. Validates magic bytes, parses the binary Thrift footer, checks schema integrity, reports row groups, compression codecs, and column types. Nothing leaves your browser.
Parquet File
Drop a .parquet file here, or
Supports .parquet, .pq, and .parq files up to 500 MB
⛔
Wrong file type — only .parquet, .pq, or .parq files are supported. You dropped a file.
Validation Errors
Warnings
✓ Valid Parquet
Schema
| # | Column Name | Physical Type | Repetition | Logical Type |
|---|
Row Groups
| # | Rows | Uncompressed Size |
|---|
How It Works
1
Drop your Parquet fileDrag it onto the drop zone or click "browse" to select it. Supports .parquet, .pq, and .parq files.
2
Binary footer analysisThe validator checks the
PAR1 magic bytes at both ends of the file, reads the 4-byte footer length, and decodes the Thrift-encoded FileMetaData struct from the footer without reading any row data.3
Review the reportGet a pass/fail result with full stats: row count, column count, row group breakdown, compression codec(s), Parquet format version, schema with types, and the writer library that created the file.
What Gets Validated
- Magic bytes — checks
PAR1(orPAREfor encrypted) at byte 0 and at the end of the file. A mismatch means the file is not Parquet or is corrupted. - Footer integrity — reads the 4-byte little-endian footer length, verifies it fits within the file, and parses the Thrift binary-encoded
FileMetaDatastruct. - Schema validity — extracts all leaf column definitions including physical type, repetition level (REQUIRED / OPTIONAL / REPEATED), and logical type annotation.
- Row count consistency — sums
num_rowsacross all row groups and checks it matches the top-levelFileMetaData.num_rowsvalue. - Deprecated types — flags columns using
INT96, the old 96-bit Impala timestamp format that many modern engines do not support. - Compression codecs — detects all compression codecs in use (SNAPPY, GZIP, ZSTD, BROTLI, LZ4, etc.) across row groups and column chunks.
- File statistics — reports total rows, column count, row group count, Parquet format version, footer size, total file size, and the
created_bywriter string. - Encryption detection — recognises
PAREmagic and reports encrypted files rather than trying to parse them.
🔒 Privacy & Security
All validation is performed locally using the Web File API and the FileReader API with readAsArrayBuffer. Only the Parquet footer (typically a few KB) is parsed — row data is never decoded or transmitted. Suitable for sensitive analytical datasets, customer records, or any private columnar data.
Related Guides & Tutorials
Guide
The Complete Guide to Parquet Validating: Everything You Need to Know
What the validator checks, how to interpret results, and best practices for Parquet file integrity.
TutorialHow to Use the Parquet Validator: Step-by-Step Tutorial
A practical walkthrough of validating Parquet files in your browser with real examples.
