Saving & Exporting in GIMP - XCF, PNG, JPG, WebP

GIMP makes a strict distinction between saving (preserving your working file) and exporting (creating a deliverable image). Understanding this difference will save you from losing work and ensure your images are optimised for their intended use.

Beginner ~25 min read Updated May 2026

GIMP's Native .xcf Format - Why It Matters

The .xcf file format is GIMP's native working format, equivalent to Photoshop's .psd. When you save as .xcf, GIMP preserves everything: all layers in their original order, layer names, blend modes, opacity values, layer groups, text layers (with editable text and font information), channels, paths, guides, the undo history for the session, and any other GIMP-specific data. Nothing is flattened or discarded.

This is the file you keep on your computer as your "source of truth." An .xcf file is the version you return to when you need to make changes - Update the text, try a different colour, move an element. Always maintain an .xcf alongside any exported versions.

One limitation: .xcf files are not universally supported by other applications. You cannot email an .xcf to a client and expect them to open it in a web browser or viewer. That is what Export is for. The .xcf format is also typically much larger than an exported PNG or JPG because it stores all the raw layer data without lossy compression.

What .xcf Preserves

  • All layers, groups, blend modes, and opacity
  • Editable text (font, size, colour, spacing)
  • Paths and selection channels
  • Guides and grids
  • Full precision (8/16/32-bit per channel)
  • Image metadata and colour profile

What .xcf Does Not Do

  • Cannot be displayed in a web browser
  • Not supported by most image viewers
  • Not suitable for sending to clients or printers
  • Larger file size than web-optimised formats
  • Not readable by most non-GIMP applications

File → Save vs File → Export As

GIMP intentionally separates the concepts of saving and exporting. This is a deliberate design choice to protect users from accidentally overwriting their working .xcf with a flattened JPG (which would destroy all layers permanently).

File → Save (Ctrl+S)

Saves the current state to the open .xcf file. If you have not yet named the file, GIMP opens a Save dialog. All layers, paths, and editing state are preserved. The title bar asterisk (*) that indicates unsaved changes disappears after saving.

Only works with .xcf format. If you try to save as any other format, GIMP redirects you to Export As.

File → Save As (Shift+Ctrl+S)

Saves a copy to a new .xcf filename. The working file switches to the new filename. Use this when starting a variant of your project.

File → Export As (Shift+Ctrl+E)

Exports the flattened visible image to any supported format: PNG, JPG, WebP, TIFF, GIF, BMP, PDF, and many more. A format-specific options dialog appears - For JPG you set quality (1–100), for PNG you set compression level (0–9), for WebP you choose lossy or lossless.

Export does not change your working .xcf file. The title bar continues to show the .xcf as the working document. You can export as many times as you like without affecting your layers.

File → Overwrite (Ctrl+E)

Re-exports to the same file you last exported to, using the same settings, without showing a dialog. This is the fastest way to update your exported image after making edits - Hit Ctrl+E each time you want to update the output file.

Recommended Workflow

Edit your image. Press Ctrl+S frequently to save your .xcf. When you are ready to deliver, press Shift+Ctrl+E once to set up the export. After that, press Ctrl+E for each subsequent re-export. Never use "Save" for your deliverable - Always use "Export As."

File Format Comparison

Choosing the right output format depends on the intended use: web, print, archiving, or animation. Each format has trade-offs between file size, quality, transparency support, and compatibility.

Format Best Use Case Quality Transparency Animation Relative Size
.xcf GIMP working file Lossless (full precision) Full alpha No Very large
PNG Web graphics, logos, icons, screenshots Lossless Full alpha No (APNG with plugin) Medium
JPG / JPEG Photos for web and email Lossy (adjustable 1-100) None No Small
WebP Web images - Best all-rounder Lossy or lossless (adjustable) Full alpha Yes (animated WebP) Smallest
TIFF Print, archiving, professional press Lossless Full alpha No Large
GIF Simple animations, flat-colour web images Lossless (256 colour limit) 1-bit (on/off) Yes Small–medium
PDF Documents for print or sharing Lossless or lossy Full alpha No Variable
BMP Legacy Windows, uncompressed archiving Lossless Limited No Very large
HEIF / HEIC High-efficiency photos (modern devices) Lossy (high quality) Full alpha No Very small

Choosing Between PNG and WebP

For quick one-off conversions between formats, you can also use the online format converter tool. For new projects targeting modern web browsers, WebP is generally the better choice over PNG. WebP lossless is around 25-35% smaller than an equivalent PNG, and WebP lossy with high quality settings is almost indistinguishable from PNG at a fraction of the file size. All major browsers (Chrome, Firefox, Safari, Edge) have supported WebP since 2022. If you need to support very old software or systems, stick with PNG for lossless transparency.

When to Use JPG

JPG remains appropriate for photographs where you do not need transparency and file size is a priority - For example, images embedded in email newsletters or web pages where load time matters. Use a quality setting of 80-85% for a good balance of size and quality. Never re-save a JPG that was already a JPG, as each save cycle degrades the image further (generation loss).

Export Settings for Web

When preparing images for the web, two settings matter most beyond the format choice: colour space and metadata. Getting these right ensures your images look correct in all browsers and do not reveal unnecessary information about you or your equipment. Before exporting, make sure your image is cropped and scaled to the correct dimensions - See the guide on cropping and resizing.

Colour Profile: sRGB

Always export web images in the sRGB colour profile. Web browsers assume sRGB for untagged images, and even with tagged images most browsers only support sRGB rendering. If you have been working in a wide-gamut profile like Adobe RGB or ProPhoto RGB, convert to sRGB before exporting: go to Image → Color Management → Convert to Color Profile and choose sRGB. This step is often skipped, which results in washed-out colours when the image is viewed in a browser.

Strip Metadata

When exporting JPG or WebP, GIMP's export dialog includes an option to remove Exif metadata. Exif data can contain GPS coordinates (if the photo was taken on a phone), camera model, software name, and other personal data. For web publishing, consider checking "Remove Exif data" or the equivalent checkbox in the export options. PNG also supports metadata via the "Save Exif data" toggle in its export dialog.

Step-by-Step Web Export (PNG)

  1. 1
    Convert colour profile - Image → Color Management → Convert to sRGB if you have been working in a wide-gamut space.
  2. 2
    Scale to target resolution - Image → Scale Image. Set width and height in pixels. Use Cubic or Sinc (Lanczos) resampling for best quality.
  3. 3
    Export As - File → Export As (Shift+Ctrl+E). Type your filename with the desired extension (.png, .webp, .jpg).
  4. 4
    Set PNG options - In the PNG options dialog, set compression to 6 (good balance of speed vs size). Uncheck "Save Exif data" if you want to strip metadata.
  5. 5
    Click Export, then Export again on the confirmation. GIMP saves the file and returns to your working document.

Export for Print

Print production has requirements quite different from web. The most significant differences are colour space, resolution (DPI), and file format.

GIMP and CMYK

Professional print production typically requires CMYK colour mode, which GIMP does not natively support in its main interface. GIMP works in RGB. For professional print jobs requiring CMYK separation, export your image as a high-quality TIFF in sRGB or Adobe RGB, then convert to CMYK in a dedicated application such as Scribus or Inkscape with a colour profile, or hand the TIFF to your print provider for conversion. Many modern print services also accept sRGB TIFFs directly and perform their own CMYK conversion.

Resolution for Print

Print images need sufficient resolution - Typically 300 DPI (dots per inch) at the intended print size. You can quickly calculate the pixel dimensions you need using a DPI calculator. Set the resolution in GIMP via Image → Print Size. Note that changing the print size without resampling does not add new pixels; it only affects how many pixels are mapped to each inch when printed. To genuinely increase resolution, you need to upsample via Image → Scale Image at the same time as setting higher DPI, though this cannot recover lost detail.

Recommended Print Export Settings

  • Format: TIFF (lossless, universally accepted by print providers and design software)
  • Resolution: 300 DPI minimum; 600 DPI for line art and small text
  • Colour depth: 16-bit per channel for maximum quality (GIMP supports this - Set via Image → Precision)
  • Colour profile: Embed the sRGB or Adobe RGB profile; do not strip it for print files
  • Compression: LZW or None in TIFF options; both are lossless

Overwrite vs Export As

Once you have set up an export for the first time using File → Export As, GIMP remembers the destination file and format. From that point on, you can use File → Overwrite (Ctrl+E) to instantly re-export to the same file without any dialog. This is the keyboard shortcut to memorise if you export frequently.

Use Export As when you want to change the filename, format, or export options. Use Overwrite for iterative updates to the same output file during an editing session.

Batch Export Overview

When you need to process and export many images with the same settings - Resizing a folder of photos to web thumbnails, converting a directory of PNGs to WebP, or applying a watermark to 100 files - Batch processing is the answer.

GIMP provides two main routes for batch work. The built-in Script-Fu Console (Filters → Script-Fu → Console) accepts commands in a Scheme-based scripting language and can loop over multiple files programmatically. Learn more in the full Script-Fu scripting and automation guide. For a more visual approach, the free plugin BIMP (Batch Image Manipulation Plugin) adds a proper batch GUI to GIMP where you define a list of operations and run them against a folder of images.

For command-line batch processing, the GIMP team also provides gimp-script-fu-eval and gimp-2.99 --no-interface --batch options that let you run GIMP non-interactively in automated pipelines, such as a build system or web server image processing job.

File Size Comparison by Format

The chart below shows approximate file sizes for the same 2400 x 1600 px photographic image exported in different formats. Sizes vary significantly depending on image content (a photo with complex texture will be larger than a flat-colour graphic), but the relative ordering is consistent.

Approximate File Sizes - Same Image in Different Formats

Example: 2400 x 1600 px photographic image. XCF and TIFF sizes depend on layer count; PNG/JPG/WebP represent the flattened export. JPG at quality 85, WebP at quality 85 lossy setting.

Format Typical Size Compression Type Size vs PNG
.xcf (multi-layer) ~8 MB None (raw) 4x larger
TIFF ~6 MB LZW lossless 3x larger
PNG ~2 MB DEFLATE lossless Baseline
JPG (quality 85) ~400 KB Lossy DCT 5x smaller
WebP (quality 85) ~300 KB Lossy VP8 6-7x smaller
Next Tutorial

How to Crop & Resize Images in GIMP

Master cropping with fixed ratios, scaling with correct resampling, and resizing images for every major social media platform.

Read next →