DEV Community

OnePassApps
OnePassApps

Posted on

Split a CSV in the Browser: Row Counts, Column Values and the Bytes You Get

Full disclosure: I work on OnePassApps.

Splitting a big CSV into smaller files usually starts with "upload it here" - and the file usually holds names, emails or order records you would rather not hand to a stranger's server.

The Data Studio at app.onepassapps.com/studios/data has a Split tab that does it inside the browser tab. The page says where the work happens: Nothing leaves this tab. and Processing stays in this browser.

Two ways to cut the file

The panel runs in three steps - 01 Source, 02 Options, 03 Result - and the Options step has two mode buttons:

  • By row count - you set how many rows go into each part. The Rows per file field ships at 1000.
  • By column value - the rows are grouped by the value in one column, and each distinct value becomes a part.

A Delimiter control sits above the two modes and ships as Auto detect. After a run the result panel reports what it found, so you can see the assumption instead of guessing it.

By row count, checked on a real file

I pasted a four-row CSV (name, role, city) into the source box, set Rows per file to 2 and pressed Parse and split CSV. The result read:

  • Created 2 local CSV parts.
  • 4 rows · 3 columns · no parsing issues
  • Delimiter found - Comma
  • Parts 2
  • Split in 768 ms

The stage then showed SPLIT CSV, Part 1 of 2, 2 rows · 3 columns, the two parts in a list (Part 1, Part 2), and a Download selected part button.

The tool states its own ceiling in the Options step: Each part becomes its own local CSV download. At most 100 parts are created per run.

By column value, checked the same way

Switching to By column value adds a Group by control, which ships on the first column (name). With a four-row file where every name is different, each distinct value became its own part:

  • Created 4 local CSV parts.
  • 4 rows · 3 columns · no parsing issues
  • Parts 4
  • Split in 443 ms

The parts were labelled by the value they hold - name = Ada, name = Grace, name = Linus, name = Mika - and the stage showed Part 1 of 4 with name = Ada · 1 row · 3 columns.

One honest limit: I could not get the Group by control to open a list of columns in the tab, so my evidence for this mode is the default column only. How the tool behaves when the column you group by repeats across rows is therefore something I have not measured.

The bytes that come out

The interesting part of a split is the file, not the counter. I clicked Download selected part on the name = Ada part and captured the blob the tab handed to the download:

  • type text/csv;charset=utf-8, 47 bytes
  • content: "name","role","city" then "Ada","engineer","Berlin"
  • line ending CRLF, and every field quoted

So a part is a real CSV file with a header row - not a slice of text and not a picture of a table. In both runs the Parts counter matched the number of entries in the parts list (2 and 4), and the stage offered Download selected part next to a Whole CSV label.

Where this fits

The Data Studio row of tools is Viewer, Sort / filter, Columns, Duplicates, Merge, Split, To JSON, Formatter, Validator, To CSV and YAML - so you can reshape the same file and export it without moving it between websites.

Standard is currently free during a promotional period: $0 per month, 100,000 credits every 30 days, no card required. The tools run in the browser tab, so download your parts before you close it.

Try it on your own file: open Data Studio.

If you want the wider picture on how these browser-local tools work and what they do not do, the OnePassApps guides cover it.

OnePassApps Team - we build app.onepassapps.com, one membership for nine browser-local and hosted apps.

Top comments (0)