GIMP supports plugins and scripting, allowing users to extend its features and automate tasks. While it is not primarily designed for drawing, some artists and creators still use it for that purpose.[7]
GIMP's first public release, version 0.54, came out in 1996.[10][11] It attracted many users, and a community of contributors grew around it. These contributors produced tutorials, shared artwork, and introduced improved workflows and techniques.[12]
During a visit to UC Berkeley in 1997,Richard Stallman of theGNU Project met with Kimball and Mattis where they asked him if they could change "General" in the program's name to "GNU".[13] Stallman approved, and GIMP became part of the GNU software collection.[14]
AGUI toolkit calledGTK (at the time known as the GIMP ToolKit) was developed to facilitate the development of GIMP. The development of the GIMP ToolKit has been attributed to Peter Mattis becoming disenchanted with theMotif toolkit GIMP originally used. Motif was used up to GIMP 0.60.[11][16]
Wilber, the official mascot of GIMP, was created using GIMP by Tuomas Kuosmanen, known astigert, on 25 September 1997.[17]
Over time, other GIMP developers contributed additional accessories for Wilber, which are included in theWilber Construction Kit. The kit is available in GIMP'ssource code at/docs/Wilber_Construction_Kit.xcf.gz.
GIMP is primarily developed by volunteers as a free and open source software project associated with both theGNU andGNOME projects. Development takes place in a publicgitsource code repository,[18] on public mailing lists and in public chat channels on the GIMPNETIRC network.[19]
New features are held in public separate source code branches and merged into the main (or development) branch when the GIMP team is sure they won't damage existing functions.[18] Sometimes this means that features that appear complete do not get merged or take months or years before they become available in GIMP.
GIMP itself is released as source code. After a source code release, installers and packages are made for different operating systems by parties who might not be in contact with the maintainers of GIMP.
Theversion number used in GIMP is expressed in amajor-minor-micro format, with each number carrying a specific meaning: the first (major) number is incremented only for major developments (and is currently 3). The second (minor) number is incremented with each release of new features, with odd numbers reserved for in-progress development versions and even numbers assigned to stable releases; the third (micro) number is incremented before and after each release (resulting in even numbers for releases, and odd numbers for development snapshots) with any bug fixes subsequently applied and released for a stable version.
Previously, GIMP applied for several positions in theGoogle Summer of Code (GSoC).[20][21] From 2006 to 2009 there have been nine GSoC projects that have been listed as successful,[20] although not all successful projects have been merged into GIMP immediately. The healing brush and perspective clone tools andRuby bindings were created as part of the 2006 GSoC and can be used in version 2.8.0 of GIMP, although there were three other projects that were completed and are later available in a stable version of GIMP; those projects being Vector Layers (end 2008 in 2.8 and master),[22] and aJPEG 2000 plug-in (mid 2009 in 2.8 and master).[23] Several of the GSoC projects were completed in 2008, but have been merged into a stable GIMP release later in 2009 to 2014 for Version 2.8.xx and 2.10.x. Some of them needed some more code work for the master tree.
Second public Development 2.9-Version was 2.9.4 with many deep improvements after initial Public Version 2.9.2.[24][25] Third Public 2.9-Development version is Version 2.9.6.[26] One of the new features is removing the 4 GB size limit of XCF file.[27][28] Increase of possible threads to 64 is also an important point for modern parallel execution in actualAMDRyzen andIntelXeon processors. Version 2.9.8 included many bug fixes and improvements in gradients and clips.[29] Improvements in performance and optimization beyond bug hunting were the development targets for 2.10.0.[30] MacOS Beta is available with Version 2.10.4.[31]
The firstrelease candidate for version 3.0, RC1, was released on 6 November 2024.[32] After several more months of development, version 3.0 was completed and released on 16 March 2025.[33] This represented the completion of seven years of development to complete a major overhaul of many of GIMP's features and dependencies.
GIMP developers meet during the annualLibre Graphics Meeting.[34] Interaction designers from OpenUsability have also contributed to GIMP.[35]
The current version of GIMP works with numerous operating systems, includingLinux,macOS andWindows. Many Linux distributions, such asFedora Linux[36] andDebian,[37][38] include GIMP as a part of their desktop operating systems.
GIMP began to host its own downloads after discontinuing use ofSourceForge in 2013.[39] The website later repossessed GIMP's dormant account and hosted advertising-laden versions of GIMP for Windows.[40]
Animation showing brushes, patterns, and gradients in GIMP
Tools used to perform image editing can be accessed via the toolbox, through menus and dialogue windows. They include filters and brushes, as well as transformation, selection,layer and masking tools. GIMP's developers have asserted that it has, or at least aspire to it having, similar functionality to Photoshop, but has a different user interface.[42]
There are several ways of selecting colors, including palettes, color choosers and using an eyedropper tool to select a color on the canvas. The built-in color choosers includeRGB/HSV/LAB/LCH selector or scales, water-color selector,CMYK selector and a color-wheel selector. Colors can also be selected using hexadecimal color codes, as used in HTML color selection. GIMP has native support for indexed color andRGB color spaces; other color spaces are supported using decomposition, where each channel of the new color space becomes a black-and-white image. CMYK,LAB andHSV (hue,saturation,value) are supported this way.[43][44] Color blending can be achieved using the Blend tool, by applying agradient to the surface of an image and using GIMP's color modes. Gradients are also integrated into tools such as the brush tool, when the user paints this way the output color slowly changes. There are a number of default gradients included with GIMP; a user can also create custom gradients with tools provided. Gradient plug-ins are also available.
GIMPselection tools include a rectangular and circular selection tool, free select tool, and fuzzy select tool (also known as magic wand). More advanced selection tools include the select by color tool for selecting contiguous regions of color—and the scissors select tool, which creates selections semi-automatically between areas of highly contrasting colors. GIMP also supports a quick mask mode where a user can use a brush to paint the area of a selection. Visibly this looks like a red colored overlay being added or removed. The foreground select tool is an implementation ofSimple interactive object extraction (SIOX), a method used to perform the extraction of foreground elements, such as a person or a tree in focus. The Paths Tool allows a user to create vectors (also known asBézier curves). Users can use paths to create complex selections, including around natural curves. They can paint (or "stroke") the paths with brushes, patterns, or various line styles. Users can name and save paths for reuse.
There are many tools that can be used for editing images in GIMP. The more common tools include a paint brush, pencil, airbrush, eraser and ink tools used to create new or blended pixels. The Bucket Fill tool can be used to fill a selection with a color or pattern. The Blend tool can be used to fill a selection with a color gradient. These color transitions can be applied to large regions or smaller custom path selections.
GIMP also provides "smart" tools that use a more complex algorithm to do things that otherwise would be time-consuming or impossible. These include:
Clone tool, which copies pixels using a brush
Healing brush, which copies pixels from an area and corrects tone and color
Perspective clone tool, which works like the clone tool but corrects for distance changes
Blur and sharpen tools
The Smudge tool can be used to subtly smear a selection where it stands
Dodge and burn tool is a brush that makes target pixels lighter (dodges) or darker (burns)
Animation showing three docked and tabbed dialogs: layers, channels, and paths
An image being edited in GIMP can consist of manylayers in a stack. The user manual suggests that "A good way to visualize a GIMP image is as a stack of transparencies," where in GIMP terminology, each level (analogous to a transparency) is called a layer.[45] Each layer in an image is made up of several channels. In anRGB image, there are normally 3 or 4 channels, each consisting of a red, green and blue channel. Color sublayers look like slightly different gray images, but when put together they make a complete image. The fourth channel that may be part of a layer is thealpha channel (or layer mask). This channel measures opacity where a whole or part of an image can be completely visible, partially visible or invisible. Each layer has a layer mode that can be set to change the colors in the image.[46]
Text layers can be created using the text tool, allowing a user to write on an image. Text layers can be transformed in several ways, such as converting them to a path or selection.[47][48]
GIMP has approximately 150 standard effects and filters, including Drop Shadow, Blur, Motion Blur and Noise.
GIMP operations can be automated withscripting languages. The Script-Fu is aScheme-based language implemented using aTinyScheme interpreter built into GIMP.[49] GIMP can also be scripted inPerl,[50][51]Python (Python-Fu),[52][53] orTcl, using interpreters external to GIMP.[54] New features can be added to GIMP not only by changing program code (GIMP core), but also by creating plug-ins. These are external programs that are executed and controlled by the main GIMP program.[55][56] MathMap is an example of a plug-in written inC.[57]
There is support for several methods of sharpening and blurring images, including the blur and sharpen tool. Theunsharp mask tool is used to sharpen an image selectively – it sharpens only those areas of an image that are sufficiently detailed. The Unsharp Mask tool is considered to give more targeted results for photographs than a normal sharpening filter.[58][59] The Selective Gaussian Blur tool works in a similar way, except it blurs areas of an image with little detail.
GIMP-ML is an extension for machine learning with 15 filters.[60]
TheGeneric Graphics Library (GEGL) was first introduced in GIMP 2.6 to improve how the software processes images. Initially GIMP used GEGL for high bit-depth colour operations, helping reduce data loss when adjusting colours.[61]
GIMP 2.8 was limited to 8-bit color, which is much lower than the 12-bit or higher depth that most digital cameras produce. GIMP 2.10 introduced full support for high bit-depth color, and hardware acceleration was enabled through OpenCL for some tasks.[62]
GIMP 3.0 introduces non-destructive filters, allowing users to apply effects without permanently changing the original image. This means they can be edited, toggled on or off, or removed after being applied. Third-party filters are also supported, though they will not be retained if the necessary plugins are missing.[63]
CTX is arasterizer for vector graphics introduced in GIMP 3.0. It allows certain simple shapes, such as lines and circles, to be converted into vector objects.[64][65]
GIMP supports importing and exporting with a large number of differentfile formats.[66] GIMP's native formatXCF is designed to store all information GIMP can contain about an image; XCF is named after the eXperimentalComputingFacility atUC Berkeley where GIMP was authored. Import and export capability can be extended to additional file formats by means of plug-ins. XCF file size is extended to more than 4 GB since 2.9.6 and new stable tree 2.10.x.[67]
File formats
Import and export
GIMP has import and export support for image formats such asBMP,JPEG,PNG,GIF,TIFF[68] andHEIF,[69] along with the file formats of several other applications such asAutodesk flic animations, CorelPaintShop Pro images, and Adobe Photoshop documents. Other formats with read/write support includePostScript documents,X bitmap image,xwd, and ZsoftPCX. GIMP can also read and write path information fromSVG files and read/writeICO Windows icon files.
Import only
GIMP can import AdobePDF documents and theraw image formats used by manydigital cameras, but cannot save to these formats. An open source plug-in,UFRaw (or community supported fork nUFRAW), adds full raw compatibility, and has been noted several times for being updated for new camera models more quickly than Adobe's UFRaw support.
Export only
GIMP can export toMNG layered image files (Linux version only) andHTML (as a table with colored cells),C source code files (as an array) andASCII art (using a plug-in to represent images with characters and punctuation making up images), though it cannot read these formats.
Lifewire reviewed GIMP favorably in March 2019, writing that "for those who have never experienced Photoshop, GIMP is simply a very powerful image manipulation program," and "if you're willing to invest some time learning it, it can be a very good graphics tool."[70]
GIMP's fitness for use in professional environments is regularly reviewed; it is often compared to and suggested as a possible replacement forAdobe Photoshop.[71][72]
The single-window mode introduced in GIMP 2.8 was reviewed in 2012 by Ryan Paul ofArs Technica, who noted that it made the user experience feel "more streamlined and less cluttered".[73] Michael Burns, writing forMacworld in 2014, described the single-window interface of GIMP 2.8.10 as a "big improvement".[74]
The user interface has been criticized for being "hard to use".[75]
Initial stable version. Switch from Motif to GTK+ 1.x. Support for image layers. Introduction of theXCF file format. New memory manager with disk caching of tiles to support large images. New plug-in/extension API and introduction of the Procedural Database (PDB). Introduction of Script-Fu.
Unsupported: 1.2
1.2.5
2000-12-25
Improvements to the user interface
Unsupported: 2.0
2.0.6
2004-03-23
Switch to GTK+ 2.x graphical toolkit. Introduction of tabs and docks system, improvements to Script-Fu scripting, text re-editing, CMYK color support.
Unsupported: 2.2
2.2.17
2004-12-19
Plugin support, keyboard shortcut editor, previews for transform tools. New GIMP hardware controllers support. Improvements todrag and drop andcopy and paste to other applications. The last major version to support Windows 98/Me.
Unsupported: 2.4
2.4.7
2007-10-24
Color management support, scalable brushes, new and rewritten selection tools and crop tools. Many user interface changes including full screen editing and a new icon theme. Increased file format support. Improved printing quality. Improved interface for external device input.
Unsupported: 2.6
2.6.12
2008-10-01
Partial implementation ofGEGL, and first iteration of UI re-design.
The last major version to support Windows 2000.
Unsupported: 2.8
2.8.22
2012-05-03
Single-window mode. Multi-column dock windows. Other UI improvements. Save/Export separation. Layer groups. Tools drawn with Cairo. On canvas text editing. Simple math in size entries. Various improvements.
The last major version to support Windows XP and Vista.
Unsupported: 2.10
2.9.2
2018-04-27
GEGL port. New and improved tools. File format support improvements. Better color management. Layers blending improvements. Metadata improvements. Improved UI with new themes. On-canvas gradient editing. Wayland support on Linux. Support for new image format's (OpenEXR, RGBE, WebP, HGT). Basic HiDPI support.
File format improvements (HEIF, PSP, TIFF, JPEG, PNG, PDF, DDS, BMP, PSD). "Negative Darkroom" for negatives.[76]
Re-added support Windows Vista.
2.10.32
2022-06-14
Features backported from 2.99.8, like TIFF support improvements and JPEG XL support.
2.10.34
2023-02-27
Features backported from 2.99.14. File format improvements. Template selector in Canvas Size dialog backported from 2.99.6. Improved color-picking. Various macOS improvements. GEGL and babl improvements. Experimental ARM builds for Windows.[77]
2.10.36
2023-11-05
Support for ASE and ACB palettes. FG to transparent transition. Better image ratio support for GIFs. Various bugfixes and other enhancements.
The last major version to support Windows Vista, 7, 8 and 8.1.
2.10.38
2024-05-05
Features backported from 2.99.x. Improved support for Windows tablets.
Complete port from unmaintained old GTK+ 2.x to maintained GTK+ 3, non-destructive editing, betterHiDPI andWacom support,Wayland support on Linux, multiple layer selection support, extensions in Python 3, JavaScript, Lua and Vala. XCF saving of native GIMP data improvements.
key objectives: non-destructive filters, animation and multi page support, macros with script recording, extensions, space invasion, canvas and tools.[78][79][80]
Because of thefree and open-source nature of GIMP, severalforks, variants and derivatives of the computer program have been created to fit the needs of their creators. While GIMP iscross-platform, variants of GIMP may not be. These variants are neither hosted nor linked on the GIMP site. The GIMP site does not host GIMP builds for Windows or Unix-like operating systems either, although it does include a link to a Windows build.
CinePaint, formerly Film Gimp, is a fork of GIMP version 1.0.4, used for frame-by-frame retouching of feature films. CinePaint supports up to 32-bit IEEE-floating pointcolor depth per channel, as well ascolor management andHDR. CinePaint is used primarily within thefilm industry due mainly to its support of high-fidelity image formats. It is available forBSD, Linux, and macOS.
GIMP classic is a patch against GIMP v2.6.8 source code created to undo changes made to the user interface in GIMP v2.4 through v2.6.[81] A build of GIMP classic for Ubuntu is available.[82] As of March 2011, a new patch could be downloaded that patches against the experimental GIMP v2.7.
GIMP Portable is aportable version of GIMP for Microsoft Windows XP or later that preserves brushes and presets between computers.[83]
GIMPshop was a derivative of GIMP that aimed to replicateAdobe Photoshop in some form.[84] Development of GIMPshop was halted in 2006. The lead developer, Scott Moschella, abandoned the project after somebody registered the domain name "gimpshop.com" and claimed to be an official site taking donations, despite having no affiliation with Moschella.
GimPhoto is a fork that features a Photoshop-esque UI, similar to GIMPshop. Further modifications are possible with the GimPad tool. GimPhoto stands at version 24.1 for Linux and Windows (based on GIMP v2.4.3) and version 26.1 on macOS[85] (based on GIMP v2.6.8). Installers are included for Windows 7, 8.1, and 10; macOS 10.6+; Ubuntu 14 and Fedora; as well as source code. Only one developer is at work in this project, and as a result, fast updates are rare and there are no plans to update it to GIMP 2.8.x or above.
McGimp was an independent port for macOS that aimed to run GIMP directly on this platform, and integrated multiple plug-ins intended to optimize photos.[86]
Seashore is a port for macOS, which aims to have a simpler UI based onCocoa.[87]
Glimpse is a discontinued[88] fork of GIMP, started due to complaints over the word "gimp" being derogatory towardsdisabled people.[89]
^abKimball, Spencer; Mattis, Peter."How It All Started".Archived from the original on 25 June 2020. Retrieved18 June 2020.
^Beane, Zachary (1 January 1997)."Spencer Kimball & Peter Mattis".Gimp Gazette.Archived from the original on 11 November 2020. Retrieved29 March 2020.It took us a little while to come up with the name. We knew we wanted an image manipulation program like Photoshop, but the name IMP sounded wrong. We also tossed around XIMP (X Image Manipulation Program) following the rule of when in doubt prefix an X for X11 based programs. At the time,Pulp Fiction was the hot movie and a single word popped into my mind while we were tossing out name ideas. It only took a few more minutes to determine what the 'G' stood for.