Skip to main content
KICAD ALTIUM IMPORTER · AS OF KICAD 10.0.6 (2026-08)

KiCad's Altium importer: what it handles, and what it silently drops.

KiCad has imported Altium designs natively since version 7 — free, official, and improving almost every release. It converts your files faithfully at the primitive level, but it produces no proof of fidelity, and both its own documentation and its issue tracker record elements that don't come across. This is a dated, sourced reference to exactly where it stands.

Last updated 2026-08-30 · anchored to KiCad 10.0.6 (2026-08-29) · refreshed per release

Free analysis on your own project. Files are processed as described in our Security policy.

SOURCING

Where these facts come from — and how current they are.

Every capability and every loss on this page is sourced. Version dates come from KiCad's release announcements. “Does not import” statements are from KiCad's own contributor documentation (dev-docs.kicad.org, import-formats/altium). Silent-loss and mangle behaviors are cited to specific, reproducible entries in KiCad's public GitLab tracker, with their affected versions scoped honestly — where a bug was later fixed, we say so and give the fixed-in release. The importer changes materially most months, so this page is anchored to a version and refreshed each release.

TRANSFERS

Handled by the native importer today (sourced).

NOT IMPORTED

KiCad's own docs list it as unimported (dev-docs).

SILENTLY DROPPED / MANGLED

A documented, reproducible loss in the tracker (issue id), with version scope.

Every “silently dropped” row links to the public doc or issue that documents it.
THE TIMELINE

How the Altium importer got here.

Altium import isn't one feature — it's a moving target that has grown release by release. The dates matter: a “standard migration” behaves differently on 9.0.2 than on 10.0.6.

KiCad Altium-import version timeline, KiCad 7 through the 10.0.6 anchor. Each row is sourced to a KiCad release announcement.
VERSIONDATEWHAT CHANGED FOR ALTIUM IMPORTSOURCE
KiCad 72023

First native Altium import — .SchDoc schematics and .PcbDoc boards.

KiCad 7 release
KiCad 8.0.02024-02-23

Altium library import — .SchLib / .IntLib symbols and footprints.

KiCad 8.0.0 release
KiCad 9.0.02025-02-20

General release; importer refinements.

KiCad 9.0.0 release
KiCad 9.0.32025-07-07

The .PrjPcb full-project importer — brings a whole project across, flat multi-sheet schematics in a single pass.

KiCad 9.0.3 release
KiCad 10.0.02026-03-20

Adds Altium design-variant import; also adds Allegro / PADS / gEDA importers.

KiCad 10.0.0 release
KiCad 10.0.52026-07-22

Fixes shared-member bus connectivity (see the issue table).

KiCad 10.0.5 release / #20707
KiCad 10.0.62026-08-29

Three further Altium-import fixes. The current anchor for this page.

KiCad 10.0.6 release
Scroll to see all columns

Timeline current as of the 10.0.6 anchor. Newer point releases are appended here on refresh.

BEFORE NATIVE IMPORT

The standalone converters are archived — use native import, then verify what it left behind.

Before KiCad 7 shipped native Altium import in 2023, the only way across was a community converter — most often thesourcerer8's altium2kicad, and older plugins like pcad2kicad before it. They filled a real gap for years. That gap is closed. The altium2kicad repository is archived and no longer maintained; it targets KiCad file formats that have since moved on, so on a current KiCad its output can be a .kicad_pcb the modern parser rejects or opens with errors. Older guides — and AI assistants — still point people to it: as of this page's last update (2026-08-30), that recommendation is out of date. The maintained path is KiCad's own native importer, the subject of this page.

  • altium2kicad (thesourcerer8)

    The best-known standalone Altium → KiCad converter. Its repository is archived and unmaintained, and its output can fail to open in a current KiCad.

  • pcad2kicad and older plugins

    Earlier community converters that predate native import; superseded for the same reason — unmaintained against a file format that kept moving.

    community projects, unmaintained
  • KiCad native importer

    Official, free, maintained, and improving most releases (see the timeline above). This is the path to use — with the caveat this page documents next: it still drops design data without telling you.

Native import gets the board in. What neither the old converters nor a standard import give you is proof of what actually came across — the elements in the tables below. That's the part worth checking against your source before you trust the result.
WHAT IT HANDLES

What KiCad's importer does well.

Give the importer its due — the base of a board comes across cleanly, and the scope has widened every release. As of KiCad 10.0.6, a native import reliably brings over:

  • Board primitives

    Tracks, arcs, vias, pours and the layer stackup import faithfully and keep improving.

  • Components & footprints

    Component placement and footprint geometry come across.

  • Nets & connectivity (base)

    The connectivity graph imports, with documented net-name / case edge cases.

  • Libraries

    Altium .SchLib / .IntLib symbols and footprints, since 8.0.0.

  • Whole projects

    A .PrjPcb imports as a project, flat multi-sheet in one pass, since 9.0.3.

  • Design variants

    Altium design variants import, since 10.0.0.

This is the part you don't need to worry about. The rest of this page is the part you do.
NOT IMPORTED (BY DESIGN)

What the importer's own documentation lists as unimported.

These aren't bugs — KiCad's contributor documentation names them as out of scope. Stated verbatim-as-fact, sourced to KiCad dev-docs (import-formats/altium):

  • IEEE standard symbols
  • Parameter sets
  • Map definers / implementation parameters
  • Compile masks / blankets
  • SPICE model data — parsed, but not carried into simulation
  • Pad shapes beyond circle / rectangle / octagonal / rounded-rectangle
  • Ratsnest and coordinate markers
  • Differential-pair definitions (the pair relationships themselves)
  • Embedded boards
  • Several internal Altium directories
  • 3D package-instance placement data — read, but not applied
  • Older files' code-page / encoding — not preserved (a text-mangling risk)
Source: KiCad contributor documentation, import-formats/altium.
THE SILENT PART

What a standard import can leave behind without telling you.

Beyond the by-design exclusions above, KiCad's public tracker records specific, reproducible cases where a native import quietly changes or drops design data — the board opens, and you find out later, or not at all. Each row is a documented issue, scoped to the versions it affects as of the 10.0.6 anchor.

Documented cases where KiCad's native Altium import silently drops or mangles design data, as of KiCad 10.0.6. Each row cites the public GitLab issue that records it; this is KiCad tracker data, not a Crosspad measurement.
ELEMENTWHAT A STANDARD IMPORT DOES (AS OF 10.0.6)SOURCE
Net-class membership

Net classes import, but which nets belong to them does not — so design rules constrain nothing.

KiCad #15584
Design rules (clearance / width / via)

Not imported as enforceable rules; they must be rebuilt by hand, and their bindings depend on the missing membership above.

KiCad dev-docs + #15584
Buses (shared member name)

Members could import unconnected on ≤10.0.4 — valid in Altium, disconnected in KiCad. Fixed in 10.0.5.

KiCad #20707
Multi-channel designators

Channel suffixes stripped (C33A / C33B → C33), producing duplicate references.

KiCad #24861 / #23709
Complex hierarchical schematics

Toy projects import; complex hierarchical projects can fail, with sheet-name and refdes side-effects.

KiCad #20936 / #19281 / #11412
Project variables / variant params

Parameters not reliably transferred; ${PCB_REVISION} and similar can render as literal text (open, seen in 10.0.0).

KiCad #24455
Copper fills / zones

Soldermask relief lost; zone clearances wrong — a routine refill can disconnect copper.

KiCad #13750 / #18408
Keepouts

A polygon cutout can become an over-broad keepout, producing spurious DRC errors.

KiCad #15587
Layers / stackup

A no-equivalent layer is silently remapped; an invalid layer name can silently drop Edge.Cuts (the board outline).

KiCad #17351 / #18756
Copper / soldermask text

Text on copper or mask can arrive mispositioned (10.0.3).

KiCad #24504
Custom / complex pad stacks

Complex pad stacks “not supported yet” — an old, still-open gap.

KiCad #8182
Legacy ASCII PcbDoc

An ASCII-format PcbDoc file imports as nothing at all — no error, no warning.

KiCad #18467
Scroll to see all columns

Also documented on the tracker: symbol rotation reported as 0° (#19630), footprint refs shown as “UNK” (#18502), an imported schematic that fails to save (#11236). Version-specific — re-verified each refresh.

See every tracked failure mode, with detect/repair mapping
PER-RELEASE

What changed for Altium import, release by release.

Per-release Altium-import notes for KiCad 10.0.0 through the 10.0.6 anchor, each sourced to a KiCad release or issue.
RELEASEDATEALTIUM-IMPORT NOTESOURCE
10.0.02026-03-20

Design-variant import added. Variable-literal rendering (#24455) still open.

KiCad 10.0.0
10.0.32026

Copper / soldermask text positioning issue surfaces (#24504).

KiCad #24504
10.0.52026-07-22

Shared-member bus connectivity fixed (#20707) — the ≤10.0.4 scoping above dates from here.

KiCad 10.0.5
10.0.62026-08-29

Three further Altium-import fixes. Current anchor.

KiCad 10.0.6
Scroll to see all columns

This section is the diff readers come back for. It's appended on every refresh.

FAQ

Frequently asked questions.

Does KiCad import Altium files?

Yes. KiCad has imported Altium schematics and boards natively since version 7 (2023), libraries since 8.0.0 (2024-02-23), and whole .PrjPcb projects since 9.0.3 (2025-07-07). As of KiCad 10.0.6 (2026-08-29) it's actively maintained, with Altium-import fixes shipping most releases.

Which KiCad version added full Altium project import?

KiCad 9.0.3 (2025-07-07) added the .PrjPcb project importer, bringing a whole project across with flat multi-sheet schematics in a single pass. KiCad 10.0.0 (2026-03-20) added Altium design-variant import.

What does the KiCad Altium importer not import?

Its own documentation lists elements it doesn't import: IEEE standard symbols, parameter sets, compile masks, differential-pair definitions, embedded boards, exotic pad shapes, and SPICE model data (parsed but not simulated); older files' encoding isn't preserved. The tracker records further silent losses — net-class membership (#15584), some copper fills (#18408), keepouts (#15587).

Is the KiCad Altium importer lossy?

It converts faithfully at the primitive level but produces no proof of fidelity, and both its docs and its tracker record elements that don't come across. Whether any specific loss touches your board depends on what the design uses — which is the thing a standard import doesn't tell you.

Does the importer handle legacy ASCII PcbDoc files?

No — an ASCII PcbDoc imports as nothing at all, with no error (KiCad #18467). Crosspad splits the two legacy cases: a pre-V6 (Protel) board it names as unsupported instead of silently producing nothing, while the ASCII text form it converts to the binary form and reconciles against an independent count of your board — naming the board unsupported where the two disagree, rather than migrating on a conversion it can't vouch for.

Which import bugs are fixed versus still open in KiCad 10.0.6?

Fixed: shared-member bus connectivity (#20707, in 10.0.5). Still open as of 10.0.6: net-class membership (#15584), multi-channel designators (#24861), variable literals (#24455), custom pad stacks (#8182). Scope changes per release — this page is updated when it does.

Is altium2kicad still supported?

No. thesourcerer8's altium2kicad — the standalone converter many older guides and AI answers still point to — has an archived, unmaintained repository. KiCad has imported Altium designs natively since version 7 (2023), so the native importer, not altium2kicad, is the maintained path today.

Why does altium2kicad create an invalid .kicad_pcb that won't open?

It was written for older KiCad file formats and is no longer maintained, so on a current KiCad its output can be a .kicad_pcb the modern parser rejects or opens with errors. Use KiCad's native importer instead — then verify what it dropped, because a standard import doesn't tell you what didn't come across.

Should I use altium2kicad, pcad2kicad, or KiCad's native importer?

The native importer. Both altium2kicad and older plugins like pcad2kicad predate it and are unmaintained. Native import is official and improving most releases — but as this page documents, it still silently drops some design data, which is the part worth checking against your source (see the tracked failure modes).

IMPORT ISN'T MIGRATION

A standard import produces a file. Crosspad accounts for the design.

Everything above is the native importer — the free, official path most migrations start from. What it doesn't give you is proof: a file opens, and the dropped net-class membership, the stripped channel suffix, the keepout that became a DRC error are on you to find. Crosspad is a different thing. It reads your Altium board directly, migrates it, compares the result back against the source semantically, repairs what it can prove safe — rolling back anything it can't — and hands you an evidence report of what's verified, what was repaired, and what still needs an engineering decision. Nothing disappears in silence.

If Crosspad can't verify a critical part of the migration, it doesn't mark it safe.

START WITH YOUR PROJECT

See everything a migration accounts for — before you commit.

Point Crosspad at an Altium project and get evidence of what a KiCad migration keeps, repairs, and what it flags for you.

Free analysis on your own project. Files are processed as described in our Security policy.

Last updated 2026-08-30. Anchored to KiCad 10.0.6 (2026-08-29). This reference is refreshed on each KiCad point release that changes Altium import; sources are KiCad's release announcements, contributor documentation, and public issue tracker.