Copy and paste layer effects in GIMP 3

Apply layer effects once. Use them everywhere.

Copy Paste fx plugin for GIMP 3 with fx Copy and fx Paste labels next to a layer effects panel showing Sharpen and CIE lch Noise filters

Copy and paste layer filters and effects in GIMP 3

Key points

  • Copies non-destructive layer effects from one layer and pastes them onto one or more target layers in a single step
  • Works across different images open in GIMP at the same time
  • Preserves the original effect stack order on every paste
  • Select multiple target layers before pasting to apply the same layer effects to all of them at once
  • Fully supports colour properties in effects like drop shadow, vignette, and colour overlay
  • Fills a gap the GIMP team acknowledges: copying layer effects between layers is not yet a built-in feature
  • Requires GIMP 3.2 or later

The Copy Paste fx plugin for GIMP 3

Layer effects are one of the most useful things the GIMP team has added to GIMP 3. Apply a filter to a layer, and it lives with the layer, completely non-destructive and editable.

GIMP 3 has no built-in way to copy a layer effect from one layer to another. If you’ve spent time getting your layer filters or effects exactly right, and you need them applied on other layers, you’d need to rebuild them from scratch.

This Copy Paste fx plugin solves that problem. Two menu items, fx Copy and fx Paste, automate that process in a couple of clicks. You can paste onto multiple layers at once, and because the plugin writes the effect data to a file, it works across different images open in GIMP at the same time.

What are “layer effects”?

A layer effect is a non-destructive edit applied on top of a layer’s pixels without changing them. You can edit or remove it at any point, even after saving and reopening the image. In GIMP 3, layer effects are powered by GEGL, the image processing engine underneath GIMP, so the terms “effect” and “filter” refer to the same thing: any GEGL-based operation applied non-destructively to a layer. I’ll use “layer effect” from here on, since that’s what GIMP’s documentation does.

You apply a layer effect manually the same way you’d apply any filter: select a layer, choose an operation from the Colors or Filters menu, and leave the “Merge filter” checkbox unchecked. GIMP adds a small fx icon to the layer row in the Layers panel to show that effects are attached. You can expand that list, toggle effects on and off, double-click to re-open the settings, or delete individual effects at any time.

What the Copy Paste fx plugin does

The plugin adds two items to GIMP’s Layer menu and to the right-click context menu in the Layers panel: fx Copy and fx Paste.

fx Copy reads all the layer effects attached to the active layer and saves them to a small file on your computer.

fx Paste reads that file and applies the same effects to whichever layers you have selected, in the same stack order as the original. Select one layer before pasting, and the effects land on that layer. Select ten layers, and the effects land on all ten in a single step.

Because the effect data is saved to a file rather than held in memory, pasting works across different images open in GIMP. Copy from a layer in one image, switch to another, select your target layers, and paste.

How to use the plugin, step by step

The video below shows the full workflow. The steps are here for reference.

Short demo video showing how to copy layer effects from one image to another.

Copying effects

  1. In the Layers panel, select the layer whose effects you want to copy.
  2. Right-click the layer and choose fx Copy, or go to Layer > fx Copy.
  3. A message appears confirming how many effects were copied.

(fx Copy only works with one layer selected. Copying from multiple layers is not supported.)

Pasting effects

  1. Select the target layer or layers. To select multiple layers, hold Shift and click each one in the Layers panel.
  2. Right-click any selected layer and choose fx Paste, or go to Layer > fx Paste.
  3. The effects are applied to all selected layers, in the same order as the original.

A note about five filters: Curves, Levels, Hue-Saturation, Color Balance, and Brightness-Contrast

GIMP stores these five specific filters settings in a more complex way than other GIMP filters. That poses a challenge for any plugin that tries to read them.

Specifically: GIMP organises each of these filters’ settings into groups. Curves and Levels each have five channels (Value, Red, Green, Blue, and Alpha). Hue-Saturation and Color Balance each affect multiple tonal ranges, like shadows, midtones, and highlights. GIMP only exposes to plugin developers the settings for the currently selected channel in these filters’ dialogs.

I’ve dived into the GIMP source code and found a way to support all the settings for these five filters without relying on that API. Now this plugin reads the settings for every channel and every range, and copies all of them to the target layer. (Previous versions of the plugin only copied a limited number of these filters’ settings.)

Except!

There’s a bug in GIMP 3.2.6 that affects these five filters’ blend mode and opacity settings. This plugin copies and pastes these filters onto a layer with their blend mode and opacity intact. If you don’t edit the filter, you have nothing to worry about. But if you edit the layer filter, its edit dialog immediately resets the blend mode dropdown to Replace, and opacity to 100%, and you’ll see the layer filter’s effect change. If you then close the dialog by clicking OK, those default settings get baked in. If you click Cancel, the layer filter’s effect reverts to what was actually pasted. You can of course manually reset the blend mode and opacity to get around this bug.

In any case, this plugin warns you if it detects non-default blend mode and/or opacity settings when copying any of these specific filters. That way, the GIMP bug won’t catch you unaware.

A note on yousei3

This plugin started life as the work of a developer who goes by yousei3. They posted it to GIMPChat in early 2026, and it was immediately clear that it came from someone who understood both GIMP’s internals and what photographers actually need. The original code was clean, well-structured, and solved an important problem elegantly.

I’ve built on that foundation to add broader filter support, more robust error handling, easier installation, and translations. But the core idea and the hard work behind it are yousei3’s.

Yousei3 seems to have disappeared from the community. If you know yousei3, or know how to reach them, please get in touch with me. I’d very much like to thank them directly, and to make sure they know their work is out in the world and being used.

Copy Paste fx plugin + GIMP layer effects = relief from stress

Layer effects are one of the genuinely clever things about GIMP 3. The ability to copy them freely between layers makes them considerably more useful, saving time and effort, and eliminating opportunities for mistakes. I’m really grateful to yousei3 for doing the heavy lifting on this plugin, and I hope you’ll find it as handy as I do.

Good to know

  • The Copy Paste fx plugin requires GIMP 3.2 or later.
  • fx Copy only works with a single layer selected. Copying from multiple layers simultaneously is not supported.
  • You can paste using fx Paste to any number of layers simultaneously.
  • A small file is written to your GIMP configuration folder each time you copy. It persists between sessions, so you can copy in one GIMP session and paste in another. You can delete it safely at any time.

What languages is the plugin available in?

This plugin for GIMP 3 is available in the following languages. You don’t have to do anything to see it in your language. GIMP will automatically load the correct version of the plugin (provided you follow the installation instructions below).

  • Nederlands (Dutch)
  • English
  • Français (French)
  • Deutsch (German)
  • Italiano (Italian)
  • Magyar (Hungarian)
  • 日本語 (Japanese)
  • Polski (Polish)
  • Português (European)
  • Português (Brazilian)
  • Español (Spanish)
  • Українська (Ukrainian)
  • 简体中文 (Chinese (Simplified))
  • 繁體中文 (Chinese (Traditional))

If you have any suggestions to improve those translations, please leave a comment below.

install the Copy Paste fx plugin

This plugin is supported for GIMP 3.2 and later, on Linux, Windows, and macOS.

If you run into any problems with any of the steps below, please let me know in the comments below.

1. Download the plugin

copy-paste-fx-gimp3.zip

Download the Copy Paste fx plugin as a ZIP file. You’ll extract it as described below in the next section:

2. Copy the downloaded file to where GIMP looks for plugins

This is something you have to do for every plugin you add to GIMP 3.

Find where GIMP looks for plugins:

  1. Open GIMP if it’s not already open and select Edit > Preferences in the GIMP menu.
  2. In the Preferences dialog, scroll down the list on the left until you find Folders, then click on the expand icon in front of the word to expand that list.
  3. Scroll down the list of folders and select Plug-ins.
  4. Still in the Preferences dialog, on the Plug-in Folders panel on the right, locate your plugin folder(s). You can use the folder that’s listed for your user name or add a new one.
  5. Click on the “Show file location in the file manager” to open your computer’s file manager.
  6. Copy the .ZIP file you downloaded into that folder and extract it there. You should see a subfolder named “copy-paste-fx-gimp3”. The plugin is inside that folder (see the note below for why it should be in its own subfolder). Don’t move it, just leave it in that subfolder.
  7. Files downloaded from the internet or transferred across systems may not retain their “executable” flag, especially on UNIX-based systems like Linux and macOS. The plugin’s .py file needs the correct permission to be executed as a script. It’s a quirk of the different operating systems’ security models. Windows 11 treats plugin .py files as executable automatically.
    • Linux:
      You should be able to right click on the .py file and set the permission to allow it as an executable (see below for an example screenshot). Or you could set it in your Terminal app with the command chmod +x [PATH TO WHERE YOU EXTRACTED THE PLUGIN FOLDER]/copy-paste-fx-gimp3/copy-paste-fx-gimp3.py. For example, with GIMP 3 I extracted the plugin folder into a subfolder of Documents, so the command would be chmod +x "Documents/GIMP plugins/copy-paste-fx-gimp3/copy-paste-fx-gimp3.py".
    • macOS:
      You may be able to right click on the .py file and set the permission to allow it as an executable (see below for an example screenshot). Otherwise, follow these instructions from Apple.

There are two files in the copy-paste-fx-gimp3 folder that need to be marked as executable: copy-paste-fx-gimp3.py and helpers.py. Do not mark any other files in that folder as executable.

3. Register the plugin with GIMP

Now you have to register the plugin with GIMP: just close and re-open GIMP.

If all has gone according to plan, you should find two menu entries in the GIMP Layer menu: fx Copy and fx Paste. You’ll also find them in the right-click menu on any layer. If not, please leave a comment below.

4. Optional: create a keyboard shortcut

If you want to assign a keyboard shortcut to the menu items, go right ahead.

These instructions are the same as for my other GIMP plugins (Interactive luminosity masks, Frequency separation, Dodge and burn…). Only the plugin names are changed.

Why it’s important to follow these steps

GIMP version 3.x requires that every plugin must live in a folder with exactly the same name as the plugin file. So for example, you add the subfolder where you’ve saved the plugin file to the list of folders where GIMP looks for plugins, and that folder needs to be named exactly the same as the plugin.

This is an example of how working with free software isn’t entirely free. You have to do some of the work that other systems automate, and put your thinking cap on. Bear in mind that GIMP is developed and maintained by volunteers who donate their time and talents as and when they can. So sometimes documentation lags behind development.

Frequently asked questions

What is the difference between a layer filter and a layer effect in GIMP?

In GIMP 3, they are the same thing. A layer effect is a GEGL-based filter applied non-destructively to a layer. GIMP uses both terms, but “layer effects” is the official name for the feature.

How do I reuse a filter on another layer in GIMP?

GIMP 3 doesn’t have a built-in way to do this. The Copy Paste fx plugin adds fx Copy and fx Paste to the Layer menu. The plugin allows you to reuse any combination of layer effects on any number of layers.

How do I apply the same layer filter or effect to other layers in GIMP?

Use the Copy Paste fx plugin. Apply your effects to one layer, run fx Copy, select your target layer or layers, and run fx Paste. The effects are applied to all selected layers in one step.

Does the Copy Paste fx plugin work across different images?

Yes. The plugin saves copied layer effects to a file, so you can copy from a layer in one image and paste to layers in a different image.

Which version of GIMP does the Copy Paste fx plugin require?

The plugin requires GIMP 3.2 or later.

Is the Copy Paste fx plugin free?

Yes. It’s released under the GNU General Public License v3.

Can I save GIMP layer effects and apply them elsewhere?

That requires the Copy Paste fx plugin. It saves your copied effects to a file that persists between sessions, so you can apply them to layers in other images too.

Does GIMP have layer styles like Photoshop?

GIMP 3 has layer effects, which are its equivalent of Photoshop layer styles. You can apply non-destructive effects like drop shadow, vignette, and colour overlay to any layer and edit them at any time.

How do I copy layer styles in GIMP?

GIMP calls them layer effects rather than layer styles. The Copy Paste fx plugin adds this capability: copy effects from one layer and paste them to one or more others, including across different images.


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *