
I built a free template that logs every page using your images into a Google Sheet each Monday, no stock agency monitoring service. What would you point it at first?
I checked one of my product photos on Google Lens a while back, found it on a page I'd never heard of, felt good about myself, and then never did it again. Not because it stopped mattering. Because doing it by hand means pasting one image at a time and I gave up somewhere around the fourth one.
So I built the boring version that just runs.
Schedule (Mondays) -> your list of image URLs -> Google Lens exact-match lookup -> keep confirmed matches -> one row per page -> Google Sheets.
Each row gives you the week, the source image, the site, the page title, the page URL, and the pixel dimensions of their copy.
That last column is the one I actually sort on. A 150px copy is a thumbnail in a roundup post and I don't care. A full-size copy at the original dimensions is somebody who took the file. Same match, completely different problem, and you can tell them apart in the sheet before you open a single link.
If you ship product photos, this tells you which retailers and marketplaces are using your images, including the ones nobody told you about.
If you sell or licence photography, it's the same job a monitoring service charges a subscription for, except you point it at the images you choose and the sheet is yours.
No AI model in the workflow, so nothing to hallucinate and no OpenAI key. It runs on an Apify actor for the Lens lookup, which is pay per result. At 100 matches an image you're looking at roughly three cents per image per week.
What it doesn't do, and I'd rather say this up front than have someone find out the hard way:
- A row is not infringement. Plenty of matches are licensed, syndicated, or your own CDN. It finds copies, it doesn't judge them.
- Zero rows means unknown, not clean. Lens coverage is genuinely patchy and it varies by language, so an empty sheet is not proof of anything.
- It only finds public pages Google has indexed. Anything behind a login is invisible to it.
- I'm not a lawyer and this isn't legal advice. It's a list of URLs.
Two things I've been going back and forth on for the next version: a filter that only logs full-size copies and drops the thumbnails, or a domain allowlist so your own site and your own retailers stop showing up every week.
Which of those would you actually use?