1M rows in 19.8 seconds — verified February 2026Last Updated: February 2026

Split Excel Workbooks
Without the Manual Pain

Split by sheet, row count, column value, or file size. Export to XLSX, CSV, TSV, JSON, or JSONL. Everything runs in your browser — file contents never uploaded.

50,380/s
Processing Speed
rows/sec (1M row test)
4
Split Modes
sheet, rows, column, size
Never
File Uploads
browser-only processing
5
Export Formats
XLSX, CSV, TSV, JSON, JSONL

Why Excel Splitting Is Painful By Hand

15 minutes per sheet

Open file, select sheet, copy all rows, paste into new workbook, rename, save. Multiply by 12 sheets. That's three hours for a single workbook.

Excel crashes at 1M rows

Excel's hard limit is 1,048,576 rows per sheet. Files exceeding this won't even open correctly. Copy/paste on large sheets causes memory errors.

No batch or automation

Excel requires manual steps for every sheet in every file. VBA scripts require IT permissions, developer knowledge, and maintenance when Excel updates.

If You Think Like This...

Stick with Excel If:

You need to preserve Excel formulas in the output
Your workbook has under 5 sheets and under 50K rows total
You split files infrequently — once a quarter or less
Your team requires VBA-based automation integrated with other macros

Use SplitForge If:

Privacy matters — your files contain sensitive data that cannot be uploaded to third-party servers
You need to split sheets with 100K to 1M rows and Excel is crashing or freezing
You need column-value splitting — one file per region, department, or product category
You split workbooks regularly and the manual workflow wastes hours per month
You need output in CSV, TSV, JSON, or JSONL for downstream pipelines

The core difference: Excel is a spreadsheet application — splitting workbooks is manual by design. SplitForge is purpose-built for bulk file operations. That focus means it handles what Excel won't: large files, batch sheet splitting, and column-value segmentation, all without uploading your data.

If splitting Excel files feels like busywork you tolerate rather than work you value — you're exactly the person this tool was built for.

Four Split Modes

Each mode is purpose-built for a different use case. Most users need By Sheet or By Max Rows — By Column Value and By File Size solve specific operational problems.

By Sheet

One output file per worksheet. The fastest mode — use for monthly report files, multi-department workbooks, or any workbook where each sheet is a distinct dataset.

Example:12-sheet annual report → 12 individual XLSX files
Best for: Finance, operations, reporting

By Max Rows

Chunk any sheet at a target row count. Splits sequentially, header row included in every output file. Useful when sheets exceed Excel's 1,048,576 row limit or when you need equal-sized chunks for parallel processing.

Example:2M row export → two 1M-row XLSX files
Best for: Data engineering, CRM imports, bulk uploads

By Column Value

One file per unique value in a chosen column. Reads column, groups rows, writes one file per group. Useful for splitting a master dataset by region, product category, sales rep, or department.

Example:Sales data with 50 regions → 50 region-specific XLSX files
Best for: Distribution, segmentation, team handoffs

By File Size

Target output files at a specific MB threshold. Estimates row counts using a sample, then writes chunks to match the target size. File sizes vary ±30% depending on data density.

Example:250MB export → 10 x 25MB files (Gmail attachment limit)
Best for: Email sharing, upload limits, file size compliance

SplitForge vs. Excel Manual Split

FeatureSplitForgeExcel Manual
Max rows per sheet~1M rows stable1,048,576 hard limit
Split by sheetOne click, all sheetsManual copy/paste per sheet
Split by row countAny threshold, auto-chunkedManual with VBA or copy/paste
Split by column valueAuto-detected, one file per valueAdvanced Filter + manual export
Split by file sizeTarget MB, automatedNot supported natively
Export formatsXLSX, CSV, TSV, JSON, JSONLXLSX, CSV only
Batch processingAll sheets simultaneouslyOne sheet at a time
Privacy (file uploads)Never uploaded — browser onlyLocal only
Formula preservationValues only — formulas removedFull formula support
CostFree$6.99–12.50/month (M365)
SplitForge does not preserve Excel formulas. Cells are written as evaluated values. If formula preservation is critical, Excel's built-in Move/Copy Sheet function is the correct tool.

Real Task Outcomes

TaskSplitForgeExcel Manual
Split a 12-sheet workbook~20 seconds~3 hours manual
Process a 1M-row sheet19.8 sec (verified)Often crashes or freezes
Split by 50 regional valuesAutomatic, one passFilter + export manually 50×
Handle a 500MB workbookStable up to 2GBSlow to open, may freeze
Time cost @ $55/hr (12-sheet workbook)< $0.01~$2.75 per workbook

How Excel Splitting Works in the Browser

No installation. No server. Every step runs locally in your browser tab.

1
File API reads your workbook

Your file is read into an ArrayBuffer via the browser's native File API. The file bytes never leave your machine — this is a local read operation identical to opening a file in any desktop app.

2
SheetJS parses the XLSX

SheetJS (xlsx library) parses the Office Open XML structure, extracts sheet names, cell data, and metadata. This runs inside a Web Worker thread so the browser UI stays fully responsive during parsing.

3
Web Worker applies your split logic

The chosen split mode runs in the background thread. By Sheet: direct write per sheet. By Max Rows: slice arrays at your threshold. By Column Value: group rows into a map by unique value. By File Size: sample rows, estimate density, chunk accordingly.

4
Output files created as local Blobs

Each output file is generated as a Blob in browser memory, packaged into a ZIP via JSZip, and offered as a browser download. Nothing is written to a server. SplitForge has zero visibility into file contents at any stage.

Architecture implication: Because all steps run locally, SplitForge is HIPAA, GDPR, and SOX compliant by architecture — not by policy. There is no server to breach, no data in transit, and no retention of any kind. Verify it yourself: open Chrome DevTools, go to the Network tab, run a split. Zero outbound requests.

Calculate Your Time Savings

Manual baseline defaults to 15 minutes per sheet — the time to open a file, select the sheet, copy all rows, paste into a new workbook, rename, and save. Adjust the slider to match your actual workflow. SplitForge processes an entire workbook in roughly 20 seconds regardless of sheet count.

Typical monthly reports: 8–15 sheets

Weekly = 4, daily = 22

Default 15 min — adjust to your actual workflow

Data analyst avg: $45–75/hr

Manual Time / Month
8.0
hours
Annual Time Saved
96
hours per year
Annual Labor Savings
$5,265
per year at $55/hr
Start saving 96 hours/year today — free, no account required.
Assumes By Sheet mode, XLSX export. Results vary by hardware and file complexity.

Five Export Formats

XLSX

Full Excel format with multi-sheet structure preserved. Best for recipients who need to open files in Excel.

Best for: Finance teams, reporting, internal distribution
CSV

Comma-separated (or custom delimiter). Fastest format for large files, universally compatible with databases, Python, and CRM imports.

Best for: Database imports, CRM uploads, data engineering
TSV

Tab-separated. Avoids delimiter conflicts when values contain commas — common in address fields and product descriptions.

Best for: Address data, product catalogs, natural language fields
JSON

Array of objects format [{col: val}]. Good for REST API ingestion. Memory-intensive for large files.

Best for: API payloads, NoSQL imports, frontend consumption
Slow for files over 200K rows — use CSV for large datasets
JSONL

Newline-delimited JSON, one object per line. Best for streaming parsers and cloud data warehouses.

Best for: BigQuery, Redshift, Elastic, pandas, data pipelines
Slow for files over 200K rows — use CSV for large datasets

Edge Cases and How They Are Handled

Benchmark: 1M Rows in 19.8 Seconds

1,000,000
Rows Processed
1M row test file
19.8 sec
Processing Time
wall clock time
50,380/sec
Throughput
rows per second
Tested on Chrome (stable), Windows 11, Intel Core i7-12700K, 32GB RAM, February 2026. Results vary by hardware, browser, file complexity, and split mode. By Sheet mode is fastest. By Column Value mode is slowest (requires grouping all rows by value before writing).

Honest Limitations: Where SplitForge Excel Splitter Falls Short

No tool is perfect for every use case. Here's where Python openpyxl / pandas / AWS Glue might be a better choice, and the real limitations of our browser-based architecture.

Browser-Based Processing

Performance depends on your device's RAM and CPU. Modern laptops (2022+) handle 10M+ rows easily, but older devices may struggle with very large files.

Workaround:
Close unnecessary browser tabs to free up memory. For files over 50M rows, consider database solutions.

No Offline Mode (Initial Load)

Requires internet connection to load the tool initially. Processing happens offline in your browser after loading.

Workaround:
Once loaded, you can disconnect and continue processing. For true offline environments, desktop tools may be better.

Browser Tab Memory Limits

Most browsers limit individual tabs to 2-4GB RAM. This is the practical ceiling for file size.

Workaround:
Use 64-bit browsers with sufficient RAM. Chrome and Firefox handle large files best.

Sheet Size Ceiling (~1M Rows per Sheet)

The worker uses SheetJS sheet_to_json() which loads the entire sheet into memory before processing. Sheets over approximately 1M rows may work, but sheets over 2M rows risk browser memory errors depending on available RAM.

Workaround:
Use By Max Rows mode to split oversized sheets into manageable chunks before processing. Alternatively, convert to CSV first and use the CSV Splitter, which uses true streaming architecture with no sheet size ceiling.

No Formula Preservation

Cells containing Excel formulas are written as their evaluated values. The formula expression is not preserved in any output format.

Workaround:
For formula-critical workflows, use Excel's built-in Move/Copy Sheet function for small workbooks, or VBA for automation. This is a fundamental characteristic of programmatic Excel reading via SheetJS.

No API or Pipeline Automation

SplitForge is a browser tool — no REST API, CLI, webhook, or scheduled job support. Cannot be integrated into automated ETL workflows.

Workaround:
For automated pipelines, use Python openpyxl for reading, pandas for splitting (pd.ExcelFile + sheet iteration), and openpyxl for writing. AWS Glue handles Excel splitting at scale with full orchestration.

Single File Per Session

Processes one workbook at a time. No batch operation across multiple files in a single session.

Workaround:
Process files sequentially. Each operation completes in seconds. For high-volume batch workflows (50+ files), use a Python script with glob() and openpyxl.

JSON/JSONL Performance Degrades Above 200K Rows

JSON and JSONL exports build full objects for every row before serializing. This is memory-intensive and slow for large datasets.

Workaround:
Use CSV or XLSX for files over 200K rows. Convert to JSON downstream if needed using a streaming parser like jq or Python json module with chunked reads.

When to Use Python openpyxl / pandas / AWS Glue Instead

You need automated Excel splitting in a scheduled pipeline

SplitForge has no API. Browser-only — cannot run headlessly or on a schedule.

💡 Python pandas + openpyxl for scripted splitting. AWS Glue for cloud-scale ETL.

You need to preserve Excel formulas in the output

SheetJS reads evaluated values, not formula expressions.

💡 Excel VBA with Workbook.SaveAs in a loop, or xlwings for Python-driven Excel automation.

Your sheets regularly exceed 2M rows

Browser memory limits make this unreliable for very large sheets.

💡 Python pandas with ExcelFile and chunksize for streaming reads. PySpark for distributed processing.

Questions about limitations? Check our FAQ section below or contact us via the feedback button.

Frequently Asked Questions

Is my data private when splitting Excel files?

How many rows can the tool handle per sheet?

Will the header row be included in every output file?

Can I split multiple sheets at different row thresholds?

What export formats are supported and when should I use each?

Does the tool preserve Excel formulas?

What happens to merged cells?

Can I automate this in a pipeline?

Ready to Split Without the Manual Grind?

Upload your workbook. Pick a split mode. Download in seconds. No install, no account, no uploads to any server.

File contents never leave your device
Four split modes — sheet, rows, column value, file size
Five export formats including XLSX, CSV, and JSONL
Works on workbooks up to 2GB

Related: Excel Row Limit Explained · Excel File Too Large Fix · Excel Cleaner · CSV Splitter