Convert CSV Columns to Rows
Convert CSV Columns to Rows transpose tool. Converts columns to rows with RFC 4180 quoted-field support. Client-side, instant, secure - no uploads.
- Runs in your browser
- Nothing uploaded
- Free, no sign-up
Transpose a CSV so its columns become rows (and rows become columns). Handles quoted fields, tabs, semicolons, and pipes. Runs entirely in your browser.
How to Use Convert CSV Columns to Rows
- Paste the CSV into the input area. The placeholder shows the shape we expect: header row first, then data rows, separated by newlines.
- Pick a delimiter. Comma is the default; switch to Tab, Semicolon, or Pipe if your source uses one of those instead. Whatever you pick for input is used for output so a round-trip stays lossless.
- Leave parser as RFC 4180 unless you have a reason to disable it. RFC 4180 keeps
"Smith, Jr."as a single cell; the simple parser would split it on the internal comma. - Optional toggles. Keep blank rows preserves empty lines (otherwise they are dropped). Trim cell whitespace strips leading/trailing spaces around each value before transposing.
- Press "Transpose" (Ctrl+Enter works too). Live preview also runs as you type with a 200 ms debounce. Stats below the output show the matrix shape change, cells padded for jagged rows, and any quoted fields found.
- Copy or download. Copy puts the output on your clipboard; Download saves a
transposed-*.csvfile. Run the transposed output through the tool again to get the original shape back.
Frequently asked questions
What exactly does “transpose” do to my CSV?
It swaps the roles of rows and columns. A 3×2 CSV (3 rows, 2 columns) becomes a 2×3 output: the first column becomes the first row, the second column becomes the second row, and so on. If your input has N rows and M columns, the output has M rows and N columns.
How is this different from the “CSV rows to columns” tool?
Mathematically they do the same thing – both perform a matrix transpose. They exist as separate pages because people search with both phrasings. Whichever you land on, the operation is identical. You can run either tool’s output back through itself to restore the original.
What happens to cells that contain commas, quotes, or newlines?
With the default RFC 4180 parser, they are preserved correctly. A cell like "Smith, Jr." stays as one cell on input, and on output any cell containing the delimiter, a newline, or a double quote gets auto-wrapped in quotes with internal " escaped to "". Switch to “Simple split” if you want the naive behaviour.
Does the tool handle RFC 4180 CSV?
Yes – that’s the default parser mode. It implements the quoted-field rules from RFC 4180 (2005): fields may be double-quoted, delimiters and newlines inside quotes are literal, and a literal double quote inside a quoted field is written as "". Output obeys the same rules.
What if my rows have different numbers of cells (jagged CSV)?
Short rows are padded with empty strings to match the widest row before transposing. The stats panel reports how many empty cells were filled, so you can tell the data was uneven without having to count.
How large a CSV can I transpose?
Anything up to around 100,000 cells (e.g., 1,000 rows × 100 columns) finishes in well under a second on a modern browser. Much larger and the main cost is the browser re-rendering the output textarea, not the parsing itself.
Does the tool keep my original delimiter and line endings?
The output always uses the same delimiter you picked for input. Line endings are normalised: any mix of n and rn on input produces plain n on output. A UTF-8 BOM at the start of input is stripped automatically.
When would I actually want to transpose a CSV?
Typical reasons: restructuring a wide table into a long format (or vice versa) before loading into Excel / a database; flipping survey questions from columns to rows for analysis; rotating financial reports for a different dashboard layout; or just preparing input for a tool that expects the opposite orientation.
Can transposing corrupt my data?
Only if the parser misreads the input. With RFC 4180 mode a round-trip (transpose, then transpose again) is lossless for standards-compliant CSV. With Simple mode a round-trip on CSV that contains quoted delimiters will corrupt those rows, which is why RFC 4180 is the default.
Is the tool free, offline, and private?
Yes. It runs entirely in your browser with plain JavaScript. No CSV is uploaded, nothing is logged, and no account is required. Load the page once, disconnect from the internet, and the tool keeps working.
Related Tools
Convert CSV Rows to Columns →
online CSV transpose tool. Converts rows to columns with RFC 4180 quoted-field support. Client-side,…
Append CSV Columns →
Easily append columns in CSV files online. Merge datasets quickly with a free, secure…
Delete CSV Columns →
Delete CSV columns by index or name with proper RFC 4180 parsing (quoted fields,…
Extract CSV Columns →
Extract columns from CSV by name, 1-based index, or range - RFC 4180 parser,…
Sort CSV by Column →
Sort the rows of your CSV by a column you choose, in ascending or…
Swap CSV Columns →
Swap two columns in your CSV so their positions are exchanged in every row.…
Trim CSV Columns →
Trim leading and trailing whitespace from every field in your CSV for a tidy…
Add Quotes to CSV Online - CSV Quote Wrapper →
Add quotes to CSV fields instantly. Wrap values in double or single quotes, support…
Convert CSV Delimiter →
Convert CSV Delimiter between comma, tab, semicolon, pipe, or custom delimiters. Free, offline -…
Base64 to CSV Decoder →
Decode Base64 to CSV text - BOM stripped, delimiter auto-detected, URL-safe variant supported. Free,…
Convert CSV Quote Character →
Convert CSV quote characters instantly with our free online tool. Replace single or double…
Convert CSV to Base64 →
online CSV to Base64 encoder. Standard and URL-safe, MIME line-wrap, UTF-8 safe. Client-side, instant,…