Flat / CSV hosting

CSV hosting: upload a table and share a link

Publish a CSV from your browser or the CLI. Give readers a table they can inspect online and the original file for their own spreadsheet or data tool.

Checking your upload limits... · Public · Limits

Drop your CSV files here

or choose them from your device.

Select CSV files

What readers see at your CSV link

Flat displays CSV rows and columns in a read-only grid. The screenshot shows a sample project-cost export. Readers can scroll through the data without opening a spreadsheet application.

CSV contains one table, without workbook tabs, charts, or cell styling. Parsing can infer numbers and dates, so check identifiers, leading zeros, and date columns in the preview. The original CSV stays unchanged.

A single file opens in the viewer. Several files open in the explorer, where readers can choose a file. Public links need no Flat account. Original downloads remain available if a preview cannot load.

The main link opens Flat's viewer. The exact path /project-costs.csv serves the original file, without changing its contents.

Flat's read-only CSV viewer showing sample project tasks, estimated hours, rates, and totals in a table.
project-costs.csv in Flat's data gridView full-size screenshot

How to upload CSV files and get a link

  1. Prepare your file

    Export a UTF-8 CSV with a header row and consistent column counts. Quote fields that contain commas, quotes, or line breaks. Check your export delimiter, especially when moving between regional spreadsheet settings.

    Include units in column names and use unambiguous dates. If readers need several sheets or richer workbook content, publish an XLSX file instead. CSV hosting does not update a table from a connected data source.

  2. Publish from your browser or terminal

    In your browser

    Drop, publish, copy the link.

    Drop your finished files into the uploader above, or select them from your device. Enter your email if signed out, then choose "Publish files".

    Selected files need unique names and publish at the top level. Use the CLI for folders; the browser uploader does not accept folders or extract ZIPs.

    Go to uploader
    TerminalNode.js 20+

    One command. Files or folders.

    npx -y @getflat/cli deploy ./project-costs.csv

    Replace the example path with your file. Pass a folder to publish related files with their relative paths intact. The CLI prints the published URL.

  3. Check before sharing

    Compare the header, row count, dates, and identifier columns with your export. Download the original and open it in the receiving tool before sharing an import link.

    Signed-out uploads expire after 1 hour by default. Sign in before expiry to keep them online, or sign in before publishing for no default expiry.

What you can share with CSV hosting

Monthly data exports

Send a fixed reporting snapshot that colleagues can inspect in the browser, then download for their own analysis.

Import samples

Give an integration partner a small example with the required headers and representative values. Keep the schema explanation alongside the CSV.

Keep a version, or keep an address.

Share this version

Every upload gets its own link. Publishing revised files creates a new link and leaves the earlier version unchanged. Use the version link when someone needs to review a specific upload.

Update files at one address

Use a named onflat.page address or your own domain. Sign in, then publish with the CLI using --domain. Publish revised files with the same domain to point that address to the new upload.

Named addresses are included on Free. Adding your own domain requires a paid plan. The browser uploader does not set up or repoint these addresses.

CSV hosting questions

Is hosting free, and what are the limits?

Yes. Signed-in Free includes 5 MiB per upload, 1 GiB of storage, and 5 GiB of monthly transfer, with no default expiry. The per-upload limit covers all files in that upload. Paid plans raise these limits.

Compare hosting plans and limits

Do readers need a Flat account?

No. Public links open without a Flat account. Anyone with the link can open the uploaded files. Password-protected links also require the visitor password.

Can I password-protect my upload?

Yes. Password protection is available on every plan. Add --password YOUR_PASSWORD to your CLI deploy command. It protects access to the upload and its files, but does not prevent someone with access from saving a copy. The browser uploader creates public uploads.

Set a visitor password

Can I replace files without changing the link?

A version link always refers to its original upload. For same-address updates, use a named address or your own domain. Publish revised files with the same --domain value in the CLI to point that address to the new upload.

What happens when an upload expires?

Flat stops serving it. An expired upload cannot be recovered. Signed-out uploads expire after 1 hour by default. For browser uploads, use the sign-in link shown after publishing. For CLI uploads, run npx -y @getflat/cli login. Complete sign-in before expiry to keep the upload online. If you chose a shorter expiry in the CLI, that deadline stays in place.

Can I use the original CSV URL in another tool?

The exact file URL serves the uploaded CSV. Use that path rather than the viewer link when a tool expects a CSV response. Confirm that the tool supports the file's delimiter and the upload's access settings.

Does the CSV table have editing, sorting, or filters?

The viewer is a read-only scrolling grid. It does not provide spreadsheet editing, sorting, or filtering. Download the CSV for those operations, then publish a revised export when needed.

Why do dates or leading zeros look different?

The spreadsheet parser can interpret text as a number or date. Compare the preview with your source, and use the original download when exact text representation matters. Flat does not rewrite the CSV bytes.

How large can an upload be?

Upload allowances depend on your plan and cover all files in the upload. Compare current plan limits. Preview availability also depends on format and processing support. The original file remains available to download if a preview is unavailable.

Can I embed the viewer on another website?

Flat's generated viewer cannot be embedded in an iframe and keeps Flat branding on every plan. Link to the viewer for reading or to the exact file URL for the original.

Find the guide for your spreadsheet file.

Give your CSV files a link.

Publish your file, check the preview, and share the URL.

Publish files

Free to start · View pricing

Compare spreadsheet formats