I have an Android app that I'm investigating adding the GPL3 license to. I have images and vectors that I do not want others to be able to use, as they are a part of my app's brand.

I want others to be able to read/modify/distribute the code but I'd like to protect the branding of the app.

Is there any way I can protect these assets from being used? Or by adding this GPL3 license am I opening my app up to this?

4 Answers 4


A similar question has been asked here.

Section 7 (especially 7.e) of GPLv3 provides the basis for what you want to do, as it allows the limitation of rights for trademarks and logos. It will be difficult to argue that for all graphics/images in the app, or even for the color scheme, but where a trademark/logo can be reasonably assumed you can restrict the use. By the way, a trademark does not necessarily need to be registered.

Another approach: You could distribute the app in a container where the GPL-ed code is separate from the graphics, and the image files are distributed under a different license (for example a Creative Commons or proprietary license). In that case you would not even need to refer to Section 7 of GPLv3.

  • 11
    The second paragraph is probably the most important part: clearly keep the non-GPL assets separate as to avoid any confusion about their license. Possibly, they should not be published at all.
    – amon
    Commented Feb 1, 2022 at 11:24
  • 12
    @amon: It may be useful to include with the program a set of functional non-copyrighted placeholder graphics (e.g. instead of a picture of a dog, just have the word "DOG" in a standard font), and invite people to create replacement graphics and release them under any terms they see fit. If you distribute your graphics in the same way as anyone else would be allowed to do with their own graphics, you should retain the same right to set your terms for your graphics as anyone else would have with their graphics.
    – supercat
    Commented Feb 1, 2022 at 18:47
  • @supercat This would still be limiting though right? For example if you made a GPLv3 game but all the models, textures, sounds, dialogue/story texts, etc were given placeholders, you wouldn't be able to sell the game with the actual assets included without licensing those assets as GPLv3? Likewise would requiring a proprietary license to use those assets break GPLv3? Alternatively while not strictly part of the above question, would GPLv2 be safer to use since v3 has provisions for limiting use of tivoisation & DRM?
    – Jacob Abel
    Commented Oct 30, 2022 at 22:58
  • 1
    @lambda: Why would not anyone--including me--be allowed to sell an asset pack that includes a free unmodified copy of a distribution of the base game, along with a utility to configure the game for use with the supplied assets? GPLv3 may be read as prohibiting me from seeking to sell such a package without making reasonable effort to grant everyone else who creates their own assets the same freedom to do so, e.g. by publishing the requirements for asset formats, but GPL grants an irrevocable public license to publish unmodified copies of GPL distributions, and nothing in the aggregation,...
    – supercat
    Commented Oct 31, 2022 at 15:16
  • 1
    ...outside of the verbatim copy of the GPL distribution, would be in any way a derived work of any of the GPL content. If someone produces a set of files called e.g. "cat.png" and "dog.png" whose names and file formats match those in a directory of non-copyrightable placeholder images, of what copyrighted work would such a directory be a "derivative work"? Note that a huge difference between what I'm describing and "Tivoization" would be practical freedom granted to of everyone else to release their own versions of the game with their own asset packs.
    – supercat
    Commented Oct 31, 2022 at 15:20

Since your adding the license to your own app, you can do the following:

  1. Make "template" versions of the logo, colorscheme, etc.
  2. Make the public build use these
  3. Give the codebase the ability to read in the branding from on-disk files.
  4. At package step, ship the branding files.

This is very similar the process that Mozilla uses for Firefox.

No comment on whether you can merge in other GPL stuffs when doing this. That's just barely beyond my reach.


For protecting the branding of your app, you should look into registering a trademark. Trademark protection is all about protecting your branding.

Next to that, images and the like are typically not related to the code in terms of copyrights. That means that the code and the images can be distributed under completely different (and potentially incompatible) copyright licenses.

If you use different licenses for different parts of an app, then it is very important that you make it abundantly clear which parts fall under which license terms.


Let us make it simple: as the copyright owner, you can apply whatever licences you like, to whatever parts of your repository you like (if you were using material licenced by others, it would be different).

So yes, you can exclude the images, and whatever other files you like, from the GPLv3 licence. As others have said, you should make it very clear which parts are covered by which licence, perhaps by not including the branding with your source code at all.

But protecting your brand requires more than that. In my time on Wikimedia Commons, I saw many cases where logos were deemed to not be copyrightable to begin with. In that case, excluding them from GPLv3 is moot. So, as others have said, look at trademarks as well as copyright (do not be fooled by the term “intellectual property” – copyright and trademarks are very different).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.