KiCad Autorouter Alternative: 27,721 Boards, 95.6% Hit 95%+ Completion
KiCad’s built-in autorouter hasn’t been updated in years. Here’s what an RL-based AI engine did across 27,721 KiCad boards uploaded by 11,000+ KiCad engineers (on a platform with 18,000+ engineers overall per the production analytics dashboard). Plus: the new open-source DeepPCB KiCad plugin now routes directly inside KiCad.
NEW (May 2026): The DeepPCB KiCad plugin is now available: github.com/instadeepai/deeppcb-kicad-plugin. Install, click Route inside KiCad, watch the engine work live. No file export. No upload. Stop any time. Skip ahead to the plugin section.
If you use KiCad, you’ve probably tried the built-in autorouter. And you’ve probably been disappointed.
KiCad’s autorouter (and Freerouting, the Java-based alternative most people turn to next) uses algorithms designed in the early 2000s. They work on simple boards. On anything with real complexity (differential pairs, mixed-signal sections, dense BGA breakouts) they produce results that need so much manual cleanup you wonder why you bothered.
Over 11,000 KiCad users have uploaded 27,721 boards to DeepPCB (out of 18,000+ total engineers on the platform across all formats) and let an RL-based AI engine route them instead.
95.6% of those boards achieved 95%+ completion.
KiCad Autorouter vs DeepPCB: The Real Difference
| Feature | KiCad Built-in / Freerouting | DeepPCB |
|---|---|---|
| Algorithm | Lee/maze router (1960s design) | Reinforcement learning (2010s-2020s) |
| Completion rate | Varies wildly, often 60-70% | Median 96.9%, 95.6% hit 95%+ |
| Via optimization | Minimal | Optimized |
| DRC compliance | Often requires manual fixes | DRC-clean by default |
| Differential pairs | Poor support | Supported |
| Time | Minutes to hours, often stalls | Median under 5 minutes |
| Cost | Free | Pay-per-board |
The tradeoff is straightforward: KiCad’s autorouter is free. DeepPCB is a paid product. The real question is whether the hours you spend fixing autorouter output are worth your time.
The DeepPCB KiCad Plugin: Routing Inside KiCad
Open-source, public on GitHub since May 2026: github.com/instadeepai/deeppcb-kicad-plugin. This is the default integration for KiCad users.
Why the plugin matters. You don’t leave KiCad. You don’t export DSN. You don’t upload anything anywhere. You click Route in the toolbar, and the engine routes your board live – you watch traces land in real time, layer by layer, net by net. If the result is good enough you can stop and accept the partial routing. If you want it to keep pushing, let it run longer.
Install (KiCad 10.0+). Clone the repo, drop the plugin folder into your KiCad plugins directory, restart KiCad. The official Plugin and Content Manager (PCM) listing is being finalized; until that lands, GitHub install is the path.
What the plugin does today:
- Routes any board that opens in KiCad – up to 1,200 airwires public version, 4,000+ airwires on 6 layers validated internally
- Native KiCad format in and out. Net classes, differential pairs, layer stackup, design rules all come through automatically
- Differential pairs, blind/buried vias, power and ground planes supported
- Stop-and-resume on partial routing
- DRC-clean output by default
What it does not do (yet):
- DDR4/DDR5 length matching across byte lanes (on the roadmap)
- Schematics-augmented placement (in active development; plugin handles routing only today)
- BGA fanout patterns beyond what the RL engine has learned across 27,721 KiCad boards
How It Works with KiCad
Two routes.
Route 1: Plugin. Install once from the GitHub repo, click Route inside KiCad, done. Live progress, stop any time.
Route 2: Web upload (no install).
- Export your board from KiCad (.kicad_pcb and .kicad_pro)
- Upload to DeepPCB at app.deeppcb.ai
- Configure constraints (or let the AI detect them from your board)
- Route in a few minutes
- Download the routed .kicad_pcb and open it back in KiCad
For the routing task, both flows keep your component placement exactly where you put it. The engine only routes; it doesn’t move your parts. Net classes, differential pairs, and layer stackup defined in KiCad come through automatically.
What 27,721 KiCad Boards Told Us
Across all KiCad boards uploaded to DeepPCB:
- Median completion: 96.9%
- 95%+ completion rate: 95.6% of boards
- Most common configuration: 4-layer boards
- Native format support: Plugin runs inside KiCad, or upload .kicad_pcb directly and download .kicad_pcb back
KiCad boards perform better than the platform average (95.6% vs 87% hitting 95%+). This likely reflects KiCad’s clean file format, the rich constraint metadata it preserves in exports, and the fact that KiCad boards tend to be simpler on average (4-layer is the dominant configuration at 74%).
When DeepPCB Works Best for KiCad Users (as of May 2026)
Great fit:
- Up to 4 layers, up to around 800 pins (sweet spot)
- Boards where you’ve done placement but dread the routing
- Iteration: try different placements, route each in minutes
- Differential pairs
- Any board where you’d spend hours routing manually
Not ideal (yet):
- DDR4/DDR5 length matching (on the roadmap)
- Very dense boards over 1,200 airwires (completion rate drops)
- Designs requiring specific routing topologies the AI can’t infer from constraints
What About Freerouting?
Freerouting (freerouting.org) is the most common external autorouter KiCad users try. It’s free, open-source, and uses a rip-up-and-retry algorithm.
It’s better than KiCad’s built-in router. But it still uses fundamentally the same approach: deterministic algorithms that explore routes one net at a time. When nets conflict, it backtracks and tries again. This works until the board gets dense enough that the conflicts cascade.
DeepPCB’s RL agent considers all nets, all constraints, and all layer assignments together. This is why completion rates are higher and via counts are lower.
The Math
A complex KiCad board can take hours to route manually, and traditional autorouters often leave you with significant cleanup that eats most of those hours back.
DeepPCB routes the same board to completion in a few minutes. You can then adjust critical nets if needed.
Install the KiCad plugin: github.com/instadeepai/deeppcb-kicad-plugin, or upload directly at app.deeppcb.ai. Native .kicad_pcb support. First result in a few minutes.