ZIPPY DOCS

CSV import & export

Switch to Zippy in one paste — import your links from a Bitly, Short.io, or Dub CSV export (or any CSV with a URL column), preview before anything is created, and export all your Zippy links as CSV.

CSV import & export

Moving to Zippy takes one paste. Export your links from your old tool, drop the CSV into Zippy, preview exactly what will land, and import. Your destinations, your slugs (Hero and up), and your tags come along — and every imported link starts opening the real native app instead of dying in an in-app browser.

Import is free on every plan. Your plan's link cap is the only limit — see the truth table below.

  1. In the dashboard, open Import.
  2. Paste your CSV — or upload the file. Zippy auto-detects Bitly, Short.io, and Dub exports, and any other CSV works as long as it has a column with the destination URL.
  3. Zippy shows a preview first: how many links will land, which rows are broken (and why, line by line), and whether your slugs will survive. Nothing is created yet.
  4. Hit Import. Every link is created exactly like a hand-made one — same caps, same features, same instant redirect.

A CSV can be up to 1 MB — that's tens of thousands of links.

Switch from Bitly

  1. Log in at bitly.com and open Links.
  2. Click the Export button at the top of the link list and choose CSV.
  3. Paste (or upload) the file into Zippy's Import page.
  4. Check the preview — Zippy reads the long_url column for destinations, your bitlink path as the slug, and your tags — then import.

Switch from Short.io

  1. Log in at app.short.io and open Links.
  2. Open the menu and choose Export links → CSV.
  3. Paste (or upload) the file into Zippy's Import page.
  4. Check the preview — Zippy reads OriginalURL for destinations, path as the slug, and your tags — then import.

Switch from Dub

  1. Log in at app.dub.co and open Links.
  2. Open the menu (top right) and choose Export as CSV.
  3. Paste (or upload) the file into Zippy's Import page.
  4. Check the preview — Zippy reads the url column for destinations, key as the slug, and your tags — then import.

Switch from Linktree

Linktree is the one case where there is no file to export, and we would rather say so here than let you hunt for a button that doesn't exist.

Linktree's CSV export is your analytics, not your links. Per Linktree's own help article, Download a CSV of your Insights activity, it produces five files — Activity, Cities, Countries, Devices, Referrers — on Premium plans only. No button labels, no destination URLs. And we don't scrape: linktr.ee/robots.txt ends in a blanket Disallow: /, and Linktree's Terms clause 13 prohibits using "scripts, bots, scraping tools or other automated means" to collect content from Linktree profiles.

So the honest path is a two-column CSV you type once, and Zippy takes it from there:

  1. Open your Linktree admin next to a blank spreadsheet.
  2. Two columns, header row label,url. One row per button, in the order they appear on your page — that order is what you'll rebuild the bio page in.
  3. Paste it into Zippy's Import page, check the preview, import. Every row becomes a real Zippy link.
  4. Then build the bio page by hand. A bio block never holds a raw URL — it points at one of your links, which is why a tap springs the native app. Add one link block per imported link, type the label, and set your handle, display name, bio line and avatar. There is no bio-page importer; this step is manual today.

Two things to know before you paste:

  • The label column is not read by the importer today. Keep it in your file anyway — it's what you'll be typing into the blocks in step 4, and it's the half of your page no export anywhere would have given you.
  • Imported links count against your plan's link cap until they're on your bio page (links already referenced by a bio block are excluded from the count). On Sidekick that cap is 5, so a twenty-row paste stops at five and tells you how many are waiting.

Any other CSV

Any CSV works — Zippy just needs a column containing the destination URL. If it finds a slug column, your slugs come along (Hero+); if it finds a tags column (comma, semicolon, or | separated), your tags come along too. If your headers are unusual and Zippy can't spot the URL column, the preview tells you and you can point at the right columns explicitly.

What your plan keeps

Sidekick (free)Hero & up
Import a CSV
Destinations & tags
Original slugs kept❌ — imported links get fresh random slugs✅ — your bit.ly/summer-drop becomes zipthe.link/summer-drop
How many linksup to your 5-link capunlimited

Notes on the fine print:

  • Slugs: a slug cell can be the bare path (summer-drop) or the full short URL (https://bit.ly/summer-drop) — Zippy strips it down either way. A slug that's already taken (or isn't a valid slug) doesn't fail the row; that link just gets a random slug.
  • The cap: if you hit your plan's link cap mid-import, Zippy stops there and tells you exactly how many links imported and how many are still waiting — upgrade and run the same import again to finish. Nothing is lost.
  • Broken rows (an empty or invalid URL) are skipped and listed line-by-line in the result — the rest of the file imports fine.

The door swings both ways. Legend accounts can download every link as CSV:

  • In the dashboard, use Export CSV — or hit GET /api/export/links.csv with your API key.
  • Columns: slug, short_url, destination, tags (pipe-separated), folder, created_at, archived.

It's a clean, generic CSV — good for backups, spreadsheets, or importing anywhere else. Your links, your data. (Export pairs with the Legend analytics export.)

Notes

  • The preview (dry run) never creates anything — paste, look, and walk away if you like.
  • Imported links are full Zippy links from the first tap: native-app deeplinks, UTM tracking, audience routing, tags & folders — everything your plan includes.
  • Your old short links keep working on the old service until you delete them there. Swap the links in your bios and posts to the new Zippy ones whenever you're ready.

Read more

On this page