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.
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.
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.
Built to be reviewed.
Tested 2026-07-19. Next scheduled review: 2026-10-19.
- Sketch: official migration documentationAccessed 2026-07-19
- Penpot: official migration documentationAccessed 2026-07-19