← Blog
Comparisons

Migrating from Linear to Radial in one command

How to move off Linear to Radial: export your workspace, dry-run radial import --from linear, then bring issues, projects, labels, comments, and history across in a single run. Plus what changes, and what stays the same.

Radial7 min read

Most people who search "migrate from linear" are not leaving because Linear is slow or badly built. It is neither. They are leaving because something about the shape of the tool stopped fitting: the seat math as the team grew, the AI features arriving whether they were asked for or not, or simply the pull toward a tracker their agents can drive without a per-vendor integration for each one. The decision is the hard part. The data move should not be.

For Radial, the data move is a command. You export your Linear workspace, run radial import --from linear against the file, and your issues, projects, labels, comments, and history come across in a single run. Dry-run it first so you see exactly what lands before you commit.

#The two-minute version

If you already have a Linear export on disk, the whole move is two commands:

bash
npm i -g radial.build
radial import --from linear export.json --dry-run

The --dry-run flag does everything except write. It reports how many issues it would create, how many would fail, plus the relations, comments, and new labels it would build, and it surfaces warnings for anything it cannot map cleanly. When the dry run looks right, drop the flag and run it for real:

bash
radial import --from linear export.json -t ENG

The -t ENG puts the imported issues on your ENG team. That is the entire migration for a single workspace. No connect-your-account handshake, no waiting on an import queue, no migration window to schedule.

#What actually comes across

The import is a deep import, not a flat issue dump. In one run it brings:

  • Issues, with their titles, descriptions, and status mapped to Radial's workflow.
  • Projects, so the structure you had in Linear is not flattened into one bucket.
  • Labels, created as needed (the dry run tells you how many are new).
  • Comments, preserved on the issues they belong to.
  • History and relations, so the links between issues survive the move.

When the run finishes, you get a one-line summary of what landed: issues created, any that failed, plus relations, comments, and new labels created, followed by up to ten warnings for anything that needed a judgment call. Because every command takes --json, you can also pipe that summary straight into a script if you are migrating several workspaces in a loop:

bash
radial import --from linear export.json --dry-run --json

One honest caveat worth stating up front: the import is single-run. Re-running the same file imports it again rather than reconciling, so there is no cross-run idempotency yet. Dry-run first, run once, verify. If you are moving several teams, do them one file at a time and check each summary.

#What changes, and what stays the same

The fair thing to do in a migration guide is tell you what you are giving up, not just what you are gaining.

What stays the same. The core loop you are used to in Linear is the core loop in Radial: a fast keyboard-first board and list, issues with statuses and priorities and estimates, projects, and time-boxed Cycles where Linear has cycles. If speed is why you loved Linear, that part carries over; Radial is built the same way, for the same reason. Linear's famous internal target is that nothing in the interface should take more than a few hundred milliseconds to render, and that discipline is the right one. Radial holds the same bar.

What you give up. Radial does not have Linear's full surface area. There is no roadmap or initiative timeline, no built-in insights or velocity dashboards, no Linear Asks-style intake from Slack, and the ecosystem of third-party integrations is smaller. If your team runs on Linear's roadmap and analytics views, that is a real gap to weigh before you export. Better to know now than to find out after.

What changes for the better, if the bill was the reason. This is the part the usual alternatives miss. The most common thing people wire into a modern tracker is an agent, and the most common thing that breaks is cost. A builder in r/Linear put it plainly while comparing agent-delegation setups: the biggest pain point is cost. Radial's answer is structural, not a discount. Every agent credential is a client of the API, not a billed seat, so your agents ride free. And the price you pay is one flat number: $50 per user, per year, billed annually, locked at the rate you join. No AI credit balance, no usage meter, no overage line, because there is no AI in the product to meter.

The commitment behind that is the Plain Software Pledge, written down: the day Radial ships a copilot, meters your usage, or charges you for AI you didn't ask for, your subscription is free. This is not anti-AI. Your agent doing real work is great. The point is that the tracker is not where that intelligence should live or get billed; it is the fast system of record your agent writes to over a real CLI, REST API, and MCP server. One surface, any agent, no per-vendor integration to bolt on for each new one.

#FAQ

#How do I export my data from Linear?

Linear exports workspace and issue data from Settings > Administration > Import/Export, and it also offers a CSV export for issue lists. Take that file and point Radial at it: radial import --from linear export.json --dry-run. The dry run reads the file and reports exactly what it would create without writing anything, so you can confirm the mapping before the real run.

#Does Radial have a CLI to run the migration?

Yes, and the CLI is how the migration runs. Radial is CLI-first by design: radial import --from linear is a first-party command, not a community wrapper. Linear itself ships no official CLI (there are community CLIs and a GraphQL API), so if a terminal-native workflow is part of why you are switching, that is a real difference, not a marketing line. See the Linear CLI Linear never shipped for the fuller story.

#Will I lose my comments and history?

No. The import preserves comments on the issues they belong to and brings history and relations across, not just bare issue titles. The dry-run summary counts the comments, relations, and labels it would create, so you can verify the totals against Linear before you commit.

#Is Radial just a cheaper Linear?

No, and it is worth being precise: there are trackers cheaper than Radial, and Linear is a genuinely excellent tool. The difference is not the number, it is the shape. Radial is one flat locked price with agents riding free and a pledge that pays you if AI billing ever shows up, versus a per-seat plan with an AI layer that can grow. Pick by what made you leave, not by which line item is smaller. We lay out the full side-by-side in Radial vs Linear.

#Can my coding agent run the migration?

Yes. The import is available over the REST API (POST /v1/import) with a scoped API key, so an agent you authorize can run the move, or script it across several workspaces, without a human at the keyboard. Agents are clients of the API, not billed seats, so wiring one up costs nothing extra. Once you are on Radial, your agent files, triages, and closes issues over the MCP server at mcp.radial.build too.

#The short version

Moving off Linear is usually gated by the data, not the decision. Radial makes the data the easy part: radial import --from linear brings issues, projects, labels, comments, and history across in one run, and --dry-run shows you the result before you commit. What you migrate into keeps the speed you liked, drops the surface you did not use, and holds one flat locked price with agents riding free.

See the one number on pricing, or read Radial vs Linear for the full comparison before you export.

RadialAn issue tracker. That’s it.

The team behind Radial, the fast, CLI-first issue tracker that lets your own agents work for free. We write about plain software, speed as respect, and bringing your own agent.

Track issues like it’s 2019. Ship like it’s 2026.

An issue tracker. That’s it. Your agents ride free.

Keep reading