Linear
A weekend of work, and real gaps remain.
Issue tracking built around speed and one strong opinion about how work moves. Issues sit in cycles and projects, keyboard shortcuts cover almost everything, and the whole product is tuned so that filing and triaging costs seconds rather than minutes.
Build me an issue tracker for a small team, keyboard-first, with a real history. STACK - Astro with a Node adapter, SQLite via better-sqlite3 - Server-rendered HTML with progressive enhancement, no frontend framework ISSUES - Title, Markdown description, state (backlog, todo, in progress, done, cancelled) - Priority, assignee, labels, and an optional parent issue THE KEYBOARD - j and k to move, e to edit, a to assign, number keys for priority, / to search - Every shortcut also reachable by mouse — the keyboard is the fast path, not the only path CYCLES - A two-week window with a start and end date and a scope line - Burndown computed from the change log, not stored as a running total HISTORY - Every field change appended to an issue_events table with old value, new value, actor and UTC timestamp - The issue page shows that history; nothing is ever silently overwritten INTEGRATION - A GitHub webhook moving an issue to done when a commit or pull request references its identifier THE WAY OUT - A JSON API and a CSV export, because the first question about a tracker you host yourself is how to leave it Include a README on the event schema, the burndown query and the webhook secret.
What you lose
- The speed: Linear's local-first sync engine is the product, and matching it is a hard engineering problem rather than a feature
- Keyboard-first interaction that a team internalises and then refuses to give up
- Two-way GitHub and Slack integration that stays working without you maintaining it
- Cycles, triage and project views that already encode a way of working
- The willingness of your team to move again, which you spend once
If you would rather not build
- GitHub Issues plus Projects, if you are already there
The escape hatch
open source · no votes, no paid placement
Plane
$0Issues, cycles and roadmaps in a similar shape, self-hosted.
makeplane/planefree · open source
Vikunja
$0Task and project management with list, kanban and gantt views.
go-vikunja/vikunjafree · open source
Why this verdict
our own opinion · changed only by a person
55/100
Verdict kinda at 55: issues, states and cycles are a weekend, but Linear's actual product is latency and a sync engine, and a slow clone of it will not survive contact with the team that already uses the fast one.
History
tracked since 6 Aug 2026 · nothing is ever overwritten
Questions about Linear
answered from the record above
Is Linear free?
No — the plan we track is $10 a month. Basic, $10 per user per month, billed yearly. The pricing page lists no month-to-month option for Basic or Business.
Can you replace Linear by building your own?
ALMOST. A weekend of work, and real gaps remain. Replacement score 55 out of 100, build time a weekend. Read what you lose before you decide.
How much does Linear cost?
$10 a month on Basic — $120 a year. Recorded 6 Aug 2026.
What do you lose by replacing Linear?
The speed: Linear's local-first sync engine is the product, and matching it is a hard engineering problem rather than a feature; Keyboard-first interaction that a team internalises and then refuses to give up; Two-way GitHub and Slack integration that stays working without you maintaining it; Cycles, triage and project views that already encode a way of working; The willingness of your team to move again, which you spend once. If any of those carry weight for you, keep paying.
Is there an open-source alternative to Linear?
Yes: Plane, Vikunja. The prompt on this page is for when you want it your way instead.
Related entries
same category first, most replaced first
Every week, something stops being worth paying for.
New verdicts, prices that moved, entries added. One email a week. Unsubscribe in one click.
free forever · no tracking pixel · every prompt stays free on the site