Snug Gallery / Guides

Protecting gallery images on Shopify: right-click blocking

An honest look at image protection on a Shopify gallery: what a right-click block really prevents, what it cannot, and how to decide whether to turn it on.

Somebody finds your product photo on another store, with their logo pasted in the corner, and the first question is always the same: can I stop people saving my images? The short answer is no, not completely, and anyone who tells you otherwise is selling something. The longer answer is more useful. There is a cheap deterrent that removes the easiest ways to copy an image, there are things it cannot touch, and there is a decision to make about whether the friction it adds is worth it for your shop. This guide covers all three, using the Discourage right-click saving setting in Snug Gallery as the worked example.

What a browser gives away by design

A web page is a set of instructions plus a set of files, and the browser needs both to draw anything. When a shopper sees your gallery, their browser has already downloaded every image on screen to their device. It is in memory, it is usually in the disk cache, and its address on Shopify's CDN is right there in the page source. That is not a flaw in Shopify or in any app; it is how the web works. There is no way to show an image to a person without also handing it to their computer.

So the question is never “can I prevent copying”. It is “which copying methods do I want to make inconvenient”. Ranked by how many people know about them: right-clicking and choosing Save image as, dragging the image to the desktop, long-pressing on a phone, taking a screenshot, opening the image address from the page source, and using the browser's developer tools. A protection setting can do something about the first three. It can do nothing about the last three, and a screenshot on any phone takes two seconds.

What Snug Gallery's setting actually does

Discourage right-click saving is a checkbox on the gallery block, available on paid plans. The name is deliberate: it says discourage, not prevent. When it is on, the gallery container carries an attribute that cancels the browser's context menu inside the gallery, so a right-click on a photo shows nothing instead of Save image as. The lightbox, which is a separate element appended to the page, checks the same option and cancels the context menu there too, because a large lightbox image is the one most people would try to grab.

Alongside that, a few lines of CSS change how the images behave. Pointer events on the image element itself are turned off, so clicks and touches land on the tile around it, which is what opens the lightbox anyway. Text selection is disabled inside the gallery, so a shopper cannot drag-select a block of images and copy them as content. Dragging the image out of the page is disabled, which stops the drag-to-desktop trick in the browsers that support it. All of that runs in the theme app extension Shopify already renders for the gallery; there is no extra script, no third-party host and nothing to load. If you have read our guide on why gallery apps stop working when their script host does, the same reasoning applies here: protection that depends on a remote script disappears when the script does.

Two things are worth saying about scope. The setting is per gallery block, not per store, so a lookbook of expensive studio photography can be protected while a customer-photo wall stays open. And it applies only to the gallery. Your theme's own product images, the ones Shopify renders on the product page from the product's media, are outside the app's reach and keep their normal right-click menu unless you change the theme.

What it cannot do, and why we say so

Screenshots work. Every phone and laptop has a screenshot key, the result is the full resolution of the shopper's screen, and no web page can stop it. For a product photo displayed at 800 pixels wide that is a perfectly usable copy. Developer tools work: anyone who knows to press F12 can find the image address in seconds. View source works. Saving the whole page works. Disabling JavaScript in the browser removes the context-menu block entirely, since the cancellation is a script-level instruction. And on iPhones, Safari has no right-click concept at all; a long press on an image offers a save option that some of these techniques reduce but none of them can be guaranteed to remove across every iOS version.

There is also a cost to the shopper. A right-click menu is how people open a link in a new tab, go back a page, or fix a spelling mistake in a search box. Snug Gallery only cancels the menu inside the gallery container, not on the whole page, which limits the damage, but a shopper who right-clicks a gallery image expecting to open it in a new tab will find that nothing happens and may not know why. We would rather you know that before you tick the box than discover it from a support message.

Which is why the honest framing is a deterrent against casual copying. The person who wants one nice picture for a mood board, the small competitor who grabs whatever is convenient, the affiliate who lifts a photo for a blog post without asking: those are the people a right-click block turns away, because they will take a different image from a site that makes it easier. The person who has decided to steal your catalogue is not slowed down at all.

Setting it up and checking it

  1. Decide which galleries need it. Protection makes most sense for original photography you paid for and that is not available anywhere else: campaign shoots, lookbooks, styled scenes. It makes little sense for a UGC wall, where the photos came from customers and the whole point is that they travel, or for images your brand supplier distributes to every retailer anyway.
  2. Open the theme editor, select the Snug Gallery block on the page, and tick Discourage right-click saving. On the free plan the checkbox is present but has no effect; the gallery keeps normal browser behaviour until you upgrade. Save the theme.
  3. Check the Pinterest save button on the same block. It is the opposite decision: a small button on each tile that lets shoppers pin the image to a board with a link back to your page. Turning both on is not contradictory, since pinning brings traffic while saving does not, but decide consciously. Some brands want their images travelling with attribution and nowhere else.
  4. Test on a desktop. Right-click a gallery image: no menu should appear. Try to drag it to your desktop: nothing should happen. Open the lightbox and right-click the large image: still nothing. Now right-click a heading elsewhere on the page and confirm the normal menu is back, which proves the block is scoped to the gallery rather than the whole page.
  5. Test on a phone. Tap a tile to open the lightbox and swipe between images; the pointer-events change should not have broken the tap. Long-press an image and note what your particular phone offers. Write it down for the next time someone asks whether the images are protected, and answer with what you saw rather than what you hoped.
  6. Look at the rest of your image footprint. Snug serves gallery images from your store's Files through Shopify's CDN, at responsive sizes with a 1600-pixel version for the lightbox. If you are uploading 6000-pixel originals for a gallery that never displays them larger than 1600, you are handing out print-quality files for no reason; resize before upload. Our guide on keeping gallery images in Shopify Files covers how the files are stored.

Things that protect images better than a script

Watermarks are the classic answer and still the most effective, provided they are placed where cropping cannot remove them. A small logo in a corner is decorative; a translucent mark across the subject is protection. Most brands compromise with a corner mark on lifestyle imagery and no mark on plain product cut-outs, on the grounds that the cut-outs are replaceable and the lifestyle shots are not.

Resolution is the quiet lever. A shopper's screen needs perhaps 1600 pixels for a full-screen lightbox and far fewer for a grid tile. A thief needs whatever they can download. Upload at the size you display and nobody gets more than the shopper sees. This also makes the page faster, which is a nicer side effect than most security measures have.

When something is taken anyway, the tools that work are legal rather than technical. If the copy is on another Shopify store, Shopify publishes a copyright infringement notice form and describes the process on its intellectual property help page. You will need the address of the infringing page and of your original, which is one more reason to keep originals in your own Files with dates attached. For copies elsewhere, the host's own takedown route is usually listed in its terms. A reverse image search once a quarter finds most of them.

Put together, the sensible setup for a small brand is: display at the size you need, watermark the images that are genuinely yours and irreplaceable, tick the right-click setting on those galleries so the casual grabs go elsewhere, and keep a folder of originals with dates in case you ever have to prove who shot them first. None of it is dramatic. All of it works better than a script that promises the impossible.

Frequently asked questions

Can I stop customers from saving images from my Shopify gallery?

Not completely. A browser has already downloaded the image to display it, and screenshots, page source and developer tools are always available. What you can do is remove the easy routes: the right-click Save image as menu, drag-to-desktop and text selection. Snug Gallery's Discourage right-click saving setting does exactly that inside the gallery and its lightbox, and nothing more.

Does disabling right-click hurt the shopping experience?

It can if it is applied to the whole page, because right-click is also how people open links in new tabs and go back. Snug Gallery limits the block to the gallery container and the lightbox, so the rest of the page behaves normally. Shoppers who right-click a gallery photo simply see no menu.

Does right-click protection work on iPhones and Android phones?

Partly. Phones do not have a right-click; they have a long press, and what it offers varies by browser and operating system. The CSS that disables pointer events and dragging reduces the options on most devices, but no web page can guarantee that a save option never appears, and a screenshot is always available. Test on your own phone and describe what you see rather than promising protection.

Is the image protection setting available on the free Snug Gallery plan?

No. The checkbox is on the gallery block for every plan, but it only takes effect on the Standard and Unlimited plans. On the free plan the gallery keeps normal browser behaviour. The Pinterest save button, which goes the other way and invites sharing with a link back, is also a paid-plan setting.

More guides