VisionTagger: photo tagging without uploading them to the cloud
If you have thousands of photos and can never find the one you want later, VisionTagger may be something for you. It’s a macOS app for Apple Silicon that generates searchable descriptions and keywords for photos fully on-device using local AI, so your library becomes easier to search. Compared with cloud keywording tools, your images and generated metadata stay on your Mac, and there’s no subscription or per-image pricing. It works with folders on disk and Apple Photos Library, and can write metadata to XMP, JSON, CSV, and TXT, plus Photos metadata and optional Finder tags. Requirements: Apple Silicon (M1 or later), macOS Tahoe 26, and at least 16 GB RAM. There’s a free trial for 100 images. Price is a one-time purchase with a discounted price: $24.99 / €19.99 Website: https://www.synendo.com/visiontagger Video walkthrough: https://www.youtube.com/watch?v=AIZ3BQHsUkY If you try it, I’d really like to hear what works, what doesn’t, and what would make it more useful. Transparency: I’m Marco Henkes, developer of VisionTagger at Synendo. LinkedIn: https://www.linkedin.com/in/marcohenkes/ Contact: apps@synendo.com Website: https://www.synendo.com Privacy Policy: https://www.synendo.com/visiontagger/privacy/ Terms of Service: https://www.synendo.com/visiontagger/terms/
Collected discussion
I've used this app a bunch (used all of the trial images and ended up buying it) and really love it. The descriptions are a good starting point. I mostly use it to help tag images that are uploaded to my Flickr account. Also, was having an issue on an early version and the developer fixed it in a subsequent release.
Thank you for your kind words 😊
So it updates EXIF data in the image file?
Embedded or sidecar XMP using exiftool.
Correct! 😄 ExifTool is required for XMP sidecars and embedding metadata into image files. If you only export JSON/CSV/TXT or apply Finder tags, you do not need ExifTool.
Really like how simple it is to use, thank you
Good to hear, thank you 👍🏻
I just downloaded the app and unfortunately couldn't even get beyond the first screen, since the download of any model immediately fails with "Server error (403)"; I guess I could download it manually and add it in the meantime.
That’s strange, this is the first time I hear about a 403. I’ll have a look how the app behaves after a 403 and if you still can download the file manually. I know you can at a later stage, but I’ll make sure you can also do this during onboarding.
Ah yes, via [Browse Models] you can also add your downloaded model during onboarding. If you want to try Qwen3-VL 8B Instruct you can download the model and the projector file. I just tried and I didn't get a 403, so I hope downloading these files via a web browser causes no issue for you.
I also updated the app (1.4.4) that adds a 'manual download link' in case of a 401 or 403.
the 16 GB RAM requirement is a bit steep but makes sense given what it's doing on-device. the XMP sidecar output is the thing that makes this actually useful for a real photo workflow. writing to the file itself is risky, sidecar keeps the original untouched. does it handle RAW files or just JPEGs?
Yes, due to the model size the 16GB is really needed. I would also prefer a sidecar file, but some prefer metadata in the image file itself. It uses ExifTool for that, and that’s tested an proven. It handles most image files, including different RAW types.
Cool Idea. Thanks for sharing 👍
nice. it's very useful !
Need to check this out. I have thousands of photos myself and finding the right one is always a pain.
How do you use local AI? I didn’t try it yet but I’m curious to know how Apple local ai is doing right now