Sketch → Penpot
Move files, pages, components, libraries, styles, variables, layouts, prototypes, fonts, comments, permissions, and handoff from Sketch into Penpot with an explicit exception ledger and evidence-based cutover.
Should you make this move?
Both platforms have a case. Compare what you gain with what you give up before scheduling the cutover.
Sketch
- A focused native Mac design workflow offers local files and mature vector tools
- Shared design files and reusable components improve team consistency
- Mac-only access and weaker browser collaboration constrain distributed teams
- Plugin, prototype, history, and developer-handoff fidelity can be hard to preserve
Penpot
- Open-source design with web standards and self-hosting improves ownership
- Shared design files and reusable components improve team consistency
- Its plugin ecosystem, prototyping depth, and collaboration polish remain less mature
- Plugin, prototype, history, and developer-handoff fidelity can be hard to preserve
Penpot: Open-source design with web standards and self-hosting improves ownership. This removes a major source-side concern: Mac-only access and weaker browser collaboration constrain distributed teams.
What you lose: A focused native Mac design workflow offers local files and mature vector tools. What you inherit: Its plugin ecosystem, prototyping depth, and collaboration polish remain less mature.
Jump to a section
Know the shape of the move.
This timeline assumes
- Up to 500 files, 20 libraries, 25,000 components, and 250 users
- Design-system, product-design, research, and engineering owners approve the migration scope.
- A representative file set covers every source feature and file-size class.
- The source remains available until libraries, prototypes, access, and handoff checks pass.
- The migration team records evidence for every blocking verification check.
How do I migrate a Sketch design system to Penpot?
Inventory Sketch libraries, symbols, styles, fonts, and representative screens before choosing a conversion path. Test a small file in Penpot and record unsupported features. Rebuild reusable components and interactions where conversion loses meaning. Compare rendered screens and inspect structure, then approve team permissions and handoff before making Penpot the editing destination.
Can I import Sketch files into Penpot?
Do not assume a Sketch document imports with every symbol, prototype, and library intact. Check the formats and conversion tools supported by your Penpot version, then test a representative file. Exported assets may help preserve visuals, but editable components, constraints, and collaboration history still need separate validation and reconstruction.
What survives the move.
“Partial” and “manual” are not footnotes. They are work that must be scheduled and verified.
| Item | Outcome | Impact | What happens | Mitigation |
|---|---|---|---|---|
| Pages, artboards, vectors, text, symbols, styles, and exported assets | partial | critical | Core pages, artboards, vectors, text, symbols, styles, and exported assets can move, but Sketch and Penpot use different models, limits, identifiers, and import behavior. | Pilot every feature class, preserve source IDs, and reconcile accepted, transformed, rejected, and excluded items. |
| Shared libraries, constraints, prototypes, plugins, comments, and version history | manual | critical | Sketch structure and ecosystem features require conversion testing and destination library reconstruction. | Inventory every active dependency, approve its destination disposition, and test the replacement before source writes stop. |
| Files, pages, and canvases | partial | critical | Core design content can convert while document structure and proprietary features differ. | Pilot every file class and reconcile the complete file inventory. |
| Frames, artboards, groups, and layers | partial | critical | Containers map conceptually while layout and hierarchy can change. | Compare layer trees and screenshots for representative files. |
| Components, symbols, and instances | partial | critical | Reusable assets can import without retaining library relationships and overrides. | Publish destination libraries and reconnect or audit every critical instance. |
| Styles, variables, and design tokens | partial | critical | Style and variable systems have different scope and semantics. | Create a signed token map and rebuild the supported source of truth. |
| Auto layout, constraints, grids, and responsive behavior | partial | critical | Layout engines do not produce identical results. | Test supported viewport and content-stress cases. |
| Fonts and text rendering | partial | critical | Local, licensed, missing, and variable fonts require destination availability. | Inventory fonts and compare text bounds and line breaks. |
| Images, vectors, effects, and blend modes | partial | high | Rendering support and SVG conversion can alter appearance or editability. | Compare screenshots and retain original assets. |
| Prototypes and interactions | partial | high | Triggers, transitions, overlays, variables, and device behavior differ. | Rebuild critical flows and run task-based prototype tests. |
| Comments, annotations, and version history | lost | high | Current design can move without native collaboration history. | Resolve active review and archive required evidence. |
| Teams, projects, sharing, and permissions | manual | critical | Organization and guest access do not transfer with files. | Build and test destination access before invitations. |
Where each thing goes.
| Source | Destination | Method | Notes |
|---|---|---|---|
| Sketch team, project, or workspace | Penpot team or project | manual | Design ownership and access first. |
| Design file | Destination design file | transform | Preserve source ID and archive. |
| Page or canvas | Destination page | transform | Verify order and bounds. |
| Frame, artboard, or board | Destination frame or board | transform | Compare hierarchy and layout. |
| Component, symbol, or instance | Destination component or instance | transform | Reconnect library relationships. |
| Style, variable, or token | Destination style or token | transform | Rebuild supported semantics. |
| Constraint or auto layout | Destination layout behavior | transform | Test resize and content stress. |
| Prototype connection | Destination interaction | manual | Rebuild critical flows. |
| Comment, branch, or version | Archive evidence | manual | Resolve active work before migration. |
Make the move recoverable.
Create the source-of-truth backup
Preserve Sketch data, configuration, and operating evidence before any destination write.
- Export Sketch files, libraries, assets, prototypes, comments, branches, users, permissions, and settings where available.
- Inventory file features, fonts, styles, variables, plugins, links, handoff, and integrations.
- Record counts by team, project, file, page, component, style, prototype, owner, and access class.
- Hash source files and rendered acceptance images.
Proof to capture: A signed manifest reconciles every scoped record class, runtime dependency, export file, count, and hash.
File and feature inventory
Disposition every file, library, prototype, font, and collaboration artifact.
- Inventory source values and exceptions.
- Define explicit destination mappings.
- Reject unmapped critical records.
Proof to capture: Save the input, output, command or tool settings, warnings, and final item counts.
Conversion and visual QA
Import supported structure and identify rendering or behavior differences.
- Normalize encoding, dates, identifiers, and blanks.
- Run a representative pilot.
- Reconcile accepted, rejected, and transformed rows.
Proof to capture: Save the input, output, command or tool settings, warnings, and final item counts.
The things most likely to hurt.
These are operating limits. Treat every “Stop if” condition as a blocked migration, not a suggestion.
Visually similar files lose reusable structure
Screens render while components, tokens, layout, or libraries flatten.
- Consequence
- Future design work becomes inconsistent and expensive.
- Mitigation
- Inspect structure and behavior, not screenshots alone.
Stop if: A critical design-system relationship has no destination.
Missing fonts or effects alter approved work
Text metrics or unsupported effects shift layouts.
- Consequence
- Design and implementation references become unreliable.
- Mitigation
- Provision fonts and compare rendered acceptance images.
Stop if: A critical screen exceeds visual tolerance.
Both tools remain active design authorities
Teams edit source and destination files.
- Consequence
- Libraries and product designs diverge.
- Mitigation
- Make source read-only and update every handoff and integration.
Stop if: Any unapproved source edit occurs after freeze.
Do the work in this order.
- Days 1–3 · inventory
Inventory and decisions
6–12 hours active2–3 days elapsedOwner review waiting- Inventory Sketch data, features, users, domains, and integrations.
- Approve scope, owners, mappings, and exclusions.
Depends on: Sketch and Penpot administrator access
Stop / go checkpointExport?
Go when: Every critical item has an owner and disposition.
Stop when: Consent, billing, access, or system ownership is unclear.
- Days 3–5 · backup
Backup and reconcile
5–10 hours active1–3 days elapsedExport processing waiting- Create immutable exports and configuration evidence.
- Reconcile counts, totals, and hashes.
Depends on: Approved inventory
Stop / go checkpointTransform?
Go when: Source totals and export manifests agree.
Stop when: Any critical dataset or configuration is absent.
- Days 5–12 · pilot
Map and pilot
10–35 hours active3–8 days elapsedDestination processing and review waiting- Configure Penpot and transform representative data.
- Run a pilot containing normal records and every critical edge case.
Depends on: Verified backup
Stop / go checkpointScale?
Go when: Pilot mappings, behavior, access, and evidence pass.
Stop when: Any critical check fails or produces unexplained variance.
- Days 10–20 · cutover
Final delta and switch
5–25 hours active1–5 days elapsedDNS, import, or sync propagation waiting- Freeze production writes in Sketch.
- Apply the final delta, switch ownership, and run blocking checks.
Depends on: Passed pilot and approved rollback
Stop / go checkpointOpen production?
Go when: Counts reconcile and one destination system owns production.
Stop when: A source writer remains active or a blocking check fails.
- Days 12–40 · observe
Observe and close
3–18 hours active3–10 days elapsedOperating-cycle evidence waiting- Monitor one complete operating cycle.
- Sign the verification report and close rollback only after stability.
Depends on: Verified cutover
Stop / go checkpointClose rollback?
Go when: No trigger occurs during the agreed observation period.
Stop when: Data, access, delivery, routing, or business results regress.
Cut over with a way back.
Cutover
Make Penpot the only production system without losing the final Sketch delta.
- Freeze production writes and scheduled actions in Sketch.
- Export, transform, and reconcile the final delta.
- Apply the approved delta to Penpot.
- Switch domains, forms, integrations, sending, or sync ownership as applicable.
- Run every blocking verification check and keep the source intact.
Proof to capture: Penpot owns production, totals reconcile, and every blocking check has durable evidence.
Rollback
Return production ownership to Sketch without losing destination-era changes.
- Stop new writes and scheduled actions in Penpot.
- Restore the prior Sketch routing, forms, integrations, sending, or sync ownership.
- Export the Penpot post-cutover delta.
- Review and apply safe destination-era changes to Sketch.
- Run the same blocking checks against the restored source.
Proof to capture: Sketch again owns production with current data and no duplicate destination action.
- Unexplained critical count or value variance
- Missing or exposed critical data
- Duplicate production action
- Failed access, routing, delivery, or integration check
- A critical feature has no safe destination replacement
Prove the migration worked.
Every blocking check must pass. Capture the evidence before cleanup begins.
| Pass | ID | Check | Method | Expected result | Evidence |
|---|---|---|---|---|---|
V-01Blocking | File reconciliation | Compare counts by team, project, file, page, owner, and status. | Every scoped file is imported or archived. | File ledger. | |
V-02Blocking | Rendered parity | Compare approved screens at fixed dimensions. | Differences remain within signed tolerance. | Screenshot diff. | |
V-03Blocking | Layer and layout behavior | Inspect hierarchy and resize representative content. | Critical structure and responsive behavior remain editable. | Structure report. | |
V-04Blocking | Components, libraries, styles, and tokens | Inspect definitions, instances, overrides, and variable modes. | Required reusable relationships work. | Design-system report. | |
V-05Blocking | Text rendering | Open files with every font and compare text bounds. | No critical missing font or layout shift. | Font report. | |
V-06Blocking | Interaction flows | Run approved user tasks through representative prototypes. | Every critical path and state works. | Prototype matrix. | |
V-07Blocking | Teams and sharing | Test owners, editors, viewers, guests, and public links. | Least privilege matches policy. | Access evidence. | |
V-08Blocking | Single design authority | Inspect source editability, libraries, plugins, handoff, and integrations. | Penpot alone owns active design work. | Cutover checklist. |
Remove the scaffolding safely.
Safe after: One complete operating cycle, at least seven stable days, and owner sign-off on every blocking check.
- Create final Sketch exports and archive verification evidence.
- Revoke temporary credentials, API keys, webhooks, and elevated roles.
- Remove obsolete embeds, forms, jobs, integrations, and DNS records.
- Keep the source intact through the approved retention window.
- Cancel paid plans only after billing, legal, and recovery review.
- Schedule the next Penpot backup, access, and migration-playbook review.
Verify against the primary material.
Platform behavior changes. Check these sources and the review dates above before executing a production migration.
- Sketch: official migration documentationAccessed 2026-07-19
- Penpot: official migration documentationAccessed 2026-07-19