View, Filter and Chart TSV Files
Tab-separated files come out of database clients, spreadsheets and command-line tools, and their columns rarely line up in a text editor. Slicelytics opens .tsv files in your browser as named rows you can filter, chart and compare, without uploading anything.
Try It on a Sample TSV File
The demo holds a week of daily request counts, exported from a database as TSV. Switch to Compare to diff it against the same query exported a day later, or to Visualize to chart it. To work with the samples full screen, open them in Explore, Compare or Visualize, no account needed.
Where TSV Files Come From
The sample is what mysql --batch prints for a query: a header line, then one line per row, with a tab between values. The top of it, as a text editor shows it:
day requests p95_ms p99_ms errors
2026-10-13 18240 162 410 12
2026-10-14 19105 158 398 9
2026-10-15 21480 349 912 112 Other places write the same: psql with --no-align and a tab as --field-separator, cells copied from Google Sheets or Excel, which the clipboard holds as tab-separated text, and many scientific and command-line tools. Tabs don't line up under a header whose names are longer or shorter than the values below them, so past a few columns it's hard to tell which number belongs to which.
Every Row as an Item
Slicelytics reads the header and shows each row as an item with its columns named, e.g. day: "2026-10-15", p95_ms: 349, errors: 112. A column of numbers is read as numbers, so it can be charted and summed; anything else stays text. Lines above the header, such as a title or # comments, are skipped.
Type a filter to see only what you need, e.g. day="2026-10-15" for one row, or errors to show one column. See Filter your data for every filter.
Chart a Column
Open the sample's chart of p95 latency per day, with errors as bars. The incident on 15 Oct stands out in both. It opens with this view:
{
"v": 1,
"view": "visualize",
"props": [
"p95_ms",
"errors"
],
"x": "day",
"chart": "line",
"series": {
"errors": {
"chart": "bar"
}
}
}Pick other columns, chart types or metrics in Visualize. For CSV, see Plot a CSV without uploading it.
Compare Two Exports
The second sample is the same query run a day later. Open both in Compare and the Diff view shows the two rows that changed. 19 Oct was still filling the first time, with 6127 requests, and is complete in the second export, with 18930. Late logs added errors to 15 Oct, the day of the incident, from 87 to 112. The other five days are the same.
Compare matches rows by their position, so sort both exports the same way, e.g. with ORDER BY day.
Share a TSV File as a Link
The Share button makes a link that carries the file and the view: the filters, and the chart if one is open. The data travels in the part of the link after #, which browsers don't send to a server. See Share links for how large a file a link can carry.
Common Questions
Does the file leave my computer?
No. Slicelytics reads TSV in your browser and uploads nothing. If you share a view, the data travels in the part of the link after #, which browsers never send to a server, so treat the link like the file: anyone who has it can open it.
Which files does it open?
Files ending in .tsv, and the same compressed as .tsv.gz or .tsv.zst. A .txt file opens too, when its first line holds a tab, and so does UTF-16 text, such as Excel's "Unicode Text".
What if the file has lines above the header?
Slicelytics skips them: a title, a date range or # comments above the table. The header is the first line with as many columns as the rows below it.
Can I convert TSV to JSON or CSV with it?
No, Slicelytics has no export, apart from saving a chart as a PNG. It shows each row as an item with its columns named, as JSON would hold it.