High Performance Layout Viewer and Editor for your Windows system

KLayout

KLayout

  -  301 MB  -  Freeware
  • Latest Version

    KLayout 0.30.9 (64-bit) LATEST

  • Review by

    Sophia Jones

  • Operating System

    Windows 8 (64-bit) / Windows 10 (64-bit) / Windows 11

  • User Rating

    Click to vote
  • Author / Product

    Matthias Kofferlein / External Link

  • Filename

    klayout-0.30.9-win64-install.exe

KLayout is a high-performance viewer and editor for GDSII and OASIS files, commonly used in the field of integrated circuit (IC) design.

Developed with a focus on precision, speed, and customization, KLayout has become a go-to tool for layout engineers, designers, and EDA professionals.

It supports both layout visualization and script-driven layout manipulation, making it a versatile addition to any VLSI workflow.

Main Features

GDSII & OASIS File Support: Native support for industry-standard file formats.

Advanced Viewer: High-speed zooming, panning, and layer control for complex IC layouts.

Layout Editing: Includes tools for precise geometry creation, modification, and hierarchy handling.

Scripting Support: Extend functionality using Ruby or Python scripting for automation and customization.

DRC and Verification Tools: Basic design rule checks and layout analysis capabilities.

Macro Development: Create and integrate macros to streamline repetitive tasks.

Cross-Platform Support: Available for Windows, macOS, and Linux.

User Interface

KLayout features a clean and modular UI designed for technical users. The layout viewer is front and center, surrounded by layer controls, property windows, and an output console.

The interface supports tabs, customizable toolbars, and dockable panels. While it may seem dense to beginners, experienced users will appreciate the rich feature access and minimal distractions.

Installation and Setup
  • Visit the official KLayout website.
  • Download the Windows installer (available in both 32-bit and 64-bit versions).
  • Run the installer and follow the prompts.
  • Once installed, you can launch the application from the Start menu.
The software is self-contained and does not require additional libraries or packages. Optional scripting environments can be configured post-installation.

How to Use
  • Open a layout file (.gds or .oas).
  • Use the layer panel to toggle visibility or change layer colors.
  • Zoom and pan to inspect layout details.
  • Switch to edit mode to draw or modify geometries.
  • Use the script console or load a macro for automation.
  • Save edits or export to supported formats.
FAQ

Is KLayout free to use?
Yes, KLayout is open-source and completely free for both personal and commercial use.

Can I use KLayout for DRC checks?
Yes, it includes a scripting interface for running design rule checks, although it’s not a full DRC engine like Calibre.

What scripting languages are supported?
KLayout supports Ruby and Python for macro and automation scripting.

Can I edit GDS files directly?
Yes, you can edit geometries, instances, and layers directly within the tool.

Does it support hierarchical layouts?
Absolutely. KLayout handles hierarchical designs efficiently and allows navigation through cell instances.

System Requirements

OS: Windows 11, 10, 8 or 7

RAM: Minimum 4 GB (8 GB or more recommended)

CPU: Dual-core or better

Disk Space: ~200 MB for installation

Graphics: OpenGL-compatible GPU recommended

PROS
  • Completely free and open-source
  • Supports scripting and automation
  • Handles large and complex layouts efficiently
  • Customizable and extendable
  • Cross-platform compatibility
CONS
  • UI can feel outdated
  • Lacks full DRC/LVS capabilities
  • Limited official documentation
  • No native schematic editor
Conclusion

It stands out as a powerful and efficient layout tool ideal for IC designers looking for a free alternative to commercial EDA software. Its support for scripting, hierarchical layout handling, and lightweight design makes it particularly attractive for research, education, and even professional workflows.

Why is this app published on FileHorse? (More info)
  • KLayout 0.30.9 (64-bit) Screenshots

    The images below have been resized. Click on them to view the screenshots in full size.

    KLayout 0.30.9 (64-bit) Screenshot 1
  • KLayout 0.30.9 (64-bit) Screenshot 2
  • KLayout 0.30.9 (64-bit) Screenshot 3
  • KLayout 0.30.9 (64-bit) Screenshot 4
  • KLayout 0.30.9 (64-bit) Screenshot 5

What's new in this version:

Features:
- Enhancement: Editor Options (F3) behaviour has changed
- Enhancement: [Feature Request] Add to_bytes and from_bytes to shape classes
- Although this ticket was more a discussion, this enhancement fixes the behavior of empty layers in deep mode, which allows placing device terminals on them. This eliminates the need for the workaround mentioned in the ticket.
- With this fix, it is possible to save and load layouts that use a single library references or PCell variants as top cell. This is not strictly a supported use model, but may be useful in some cases. The "strm2xxx" tools now allow translating such files from OASIS to GDS and back.
- Enhancement: because of issue, the "Editor Options" dock was overhauled
- It is called "Tool Options" now as it hosts not just shape editor options
- The Ruler tool got its own page as the original page was not functional and
- rulers have other options. This replicates some settings from the "Ruler and annotations setup" page.
- The dock widget's visibility can be controlled in the same way than the other
- docks. The "Edit/Editor Options" entry moved to "View/Tool Options". It turns on or off the tool options dock, which is populated with pages depending on the tool. The default key binding (F3) will now show or hide this dock.
- Enhancement: Sort ports by name in "make_top_level_pins"
- Enhancement: A feature to compute a density map. It is found inside Tools/Density Map.
- The density map can be computed from one or multiple layers, the region can be specified in terms of visible region, rulers or bounding boxes of certain layers or the whole cell. The tool will generate an image overlay over the layout holding the density data.
- Enhancement: settings of search features are persisted (see discussion 2868)
- Enhancement: when moving rulers with "snap to objects", all points of the
- rulers snap to edges or vertexes now.
- cases.
- treated as int.
- not properly serialized. Specifically their representation did not include the type. Hence it was not possible to retrieve properties on deserialization with "from_s". The fix is to annotate the property values with type information. NOTE: this is a change that is not backward-compatible.
- in skew rulers.
- Enhancement: renamed ruler option for more clarity - changed
- 'snap to objects (unless disabled in template)' to 'never snap to object' (inverted)
- Enhancement: enhancements in the script API
- Cell#is_cold_proxy?: indicates if a cell is a "defunc" library reference
- Cell#library_cell_name: gets the library cell name for a "defunc" reference
- Cell#library_name: gets the library name for a "defunc" reference
- Cell#pcell_name: gets the pcell name for a "defunct" reference
- Layout#delete_cells: now available with a list of cell object
- Layout#delete_cell_rec: now available with a cell object
- Layout#prune_cell: now available with a cell object
- Layout#prune_cells: for pruning multiple cells in one call
- Layout#prune_subcells: now with a cell object
- Layout#prune_subcells: now with multiple root cells
- Layout#flatten: now with a cell object
- Layout#flatten_into: now with cell objects
- Layout#delete_cell: now with a cell object
- Default value "all" for "levels" argument in "prune_subcells" and "prune_cell"
- Default value "all" for "levels" and "true" for "prune" argument in "flatten"
- Default value "all" for "levels" and "unity" for "trans" argument in "flatten_into"

Fixed:
- Screen size error (Assertion tlPixelBuffer.cc:260 n < m_height was not true)
- Ruby ReportDatabase merging can lead to internal error
- copy_tree implicitly drops collinear points
- Instance properties inside a PCell are not preserved in KLayout
- Substrate sequestration
- strm2oas klayout/testdata/gds/issue_1835.gds a.oas, a.oas is empty
- Edit options always shown, even for klayout -ne
- using "xkill" on a KLayout instance ended in a crash
- false color maps in images where incorrectly interpolated in some
- small bugfix in L2N/LVSDB reader - default values of parameters were
- properties on objects with properties (such as BoxWithProperties) where
- snapping rulers to edges parallel to the allowed ruler direction resulted