What is the SKETCH file format?
.sketch is a vector graphics file generated by Sketch, a macOS tool used for creating vector images and UI/UX designs. A single .sketch file can hold one or more layers of objects, including shapes, text, or symbols. The format was developed by Bohemian Coding, now operating as Sketch B.V.
Since Sketch 43 (2017), a .sketch file is structured as a ZIP archive containing JSON files: document.json stores global document settings, meta.json records version metadata, and a pages/ folder holds each page as an individual .json file. Files created before Sketch 43 used a different internal format - a single SQLite database rather than a ZIP package.
.sketch files are mainly used by graphic designers for projects related to iOS and mobile graphical interfaces, as well as website and app design projects. Designers can create vector graphics using tools such as pencil, vectors, text, shapes, and other advanced elements, including gradients, shadows, borders, and reusable Symbols.
Projects stored as .sketch files can be exported into other standard file formats, such as .SVG, .PNG, .PDF, .JPG, and others. Sketch also provides a cloud sharing service and a web-based viewer and inspector for sharing projects with stakeholders. Third-party tools, including Lunacy by Icons8 and Figma (via import), can open or inspect .sketch files on Windows, Linux, and the web.
Security & safety
RISK: LOWA .sketch is a design document (ZIP of JSON + images) with no executable code, so it is safe to open. The main caution is generic: only open files from trusted senders, and treat the embedded ZIP like any archive. Beware of sketchy 'free .sketch viewer/converter' websites that may bundle adware - prefer the official Sketch web app, Lunacy, or just unzipping the file with a normal archive tool.
Format details
in a nutshell- Sketchbook / generic 'sketch' drawing files - Some simple drawing or note apps save freehand sketches with a .sketch name, unrelated to the Sketch design app.
Programs that open SKETCH files
Technical details
deep spec| Container format | ZIP archive (Sketch 43+, 2017 onward); files saved by earlier Sketch versions were a single SQLite database |
| Internal ZIP structure | `document.json` (global settings), `meta.json` (metadata), `user.json` (per-user state), `pages/*.json` (one file per page), `images/` (embedded bitmaps), `previews/` (PNG thumbnails) |
| Magic bytes | `50 4B 03 04` at offset 0 - standard ZIP local-file-header signature; pre-Sketch-43 files start with `53 51 4C 69 74 65` ("SQLite format 3") instead |
| MIME type | `application/zip` - the file is a structurally valid ZIP; no registered Sketch-specific MIME type exists |
| Native platform | macOS only for the Sketch editor app; the ZIP+JSON contents can be unpacked and inspected on any operating system |
| Page and artboard model | Documents are organized into pages; each page holds artboards (fixed-size frames) and free-canvas layers; each page is serialized as a separate JSON file inside `pages/` |
| Layer types | Text, rectangle, oval, Bézier path, group, bitmap, symbol master, symbol instance, slice, hotspot, shape group |
| Symbols and shared styles | Reusable Symbols defined once per document and referenced by UUID; shared text styles and layer styles propagate updates globally across all pages |
| Color encoding | RGBA values stored as JSON floats in the range 0.0-1.0; supports document-level color variables ("swatches") and shared layer styles |
| Vector path format | Bézier curves stored as JSON arrays of control points (`curveFrom`, `curveTo`, `point`); coordinates are normalized to the layer bounding box in 0.0-1.0 space, not absolute pixels |
| Raster image handling | Original bitmap files embedded in the `images/` folder inside the ZIP, referenced by content hash in JSON; supports JPEG, PNG, GIF, and TIFF source images |
| Export formats and scales | SVG, PNG, JPG, PDF, TIFF, WebP; artboards and slices can be exported at 1×, 2×, 3×, or custom scale multipliers |
| Cloud and sharing | Sketch Cloud provides hosted viewer links, commenting, and developer inspect from any `.sketch` file uploaded via the app or CLI |
| Third-party compatibility | Lunacy (Icons8) opens `.sketch` on Windows, Linux, and web; Figma supports direct import; Zeplin, Abstract, and Avocode support design-handoff inspection |
| Plugin and scripting API | JavaScript plugins running on macOS can read and mutate document JSON via the Sketch JavaScript API; file format internals are publicly documented by Sketch B.V. |
| Released | Sketch app 1.0 in 2010; the open ZIP+JSON file format since Sketch 43 (2017) |
| Open standard | Yes · royalty-free |
| Specification | developer.sketch.com |
SKETCH conversions
Community Q&A
asked by usersNo questions yet - be the first to ask about SKETCH files.