Auto-tag your photos with AI
Keyword a whole shoot in minutes instead of an evening. PicsTag proposes tags for every photo with a confidence score, you accept or reject them, and export the result to your catalogue.
No account. No upload. Runs in your browser.
Keywording is the work nobody does
Ask any photographer, iconographer or DAM manager what the weakest part of their library is, and they will say the metadata. Not because they disagree with keywording — because it is an hour of typing for every hundred images, it pays off only later, and it never wins against the thing that is due today.
So the library fills up with untagged assets, and then the search box — the entire justification for having a library at all — returns nothing, and everyone goes back to asking a colleague if they remember where that photo is.
How auto-tagging actually works here
PicsTag runs an image classification model on each photo and returns its top predictions, each with a confidence score. A beach photo comes back with things like seashore, sandbar,lakeside — and the score tells you how sure the model is about each one.
That score is what makes the whole thing workable at scale, because it lets you split the work in two:
- The obvious ones. Set the threshold to 80%, hit "accept all above", and the model's confident guesses go straight in. These are almost always right, and you did not have to look at them.
- The uncertain ones. Everything below the line, you review yourself — one image at a time, with the photo big enough to actually judge. This is where your expertise is worth something.
The result is the same catalogue you would have built by hand, minus the part of the job that was pure typing. And nothing enters your export unless you accepted it: rejected and un-reviewed tags are dropped.
Two ways in: local files or a CSV of URLs
If the photos are on your disk, drag them in. If they are already hosted — on a CDN, an S3 bucket, an existing DAM — you do not need to download them first. Export a CSV with an image_url column and an asset_id column, upload it, and PicsTag will work through the list, keeping your asset IDs so the export lines up with the catalogue you already have.
That second mode is what makes this usable for a backlog. Pre-indexing forty thousand legacy assets is a project; pre-indexing them from a CSV, in a browser tab, over a lunch break, is a task.
Where the AI is wrong, and why that is fine
The local model has a general-purpose vocabulary. It knows golden retriever andespresso maker; it does not know your product line, your campaign names, or your client's internal taxonomy. It will also, on occasion, be confidently wrong — a husky becomes a wolf, a courgette becomes a cucumber.
This is not a defect to be engineered away, it is the shape of the tool. The model does the recall — the tedious job of proposing every plausible term — and you do the precision. Add your own tags in the custom field for anything the model cannot know, reject the nonsense, and you end up with a catalogue that is better than what a tired human would have produced at 6pm on a Friday.
If you need a model that understands more context, the settings let you switch to a cloud vision model with your own OpenRouter API key. It costs money per image and sends the image to that provider — which is exactly why it is not the default.
Your photos stay on your machine
The models run in your browser, in a Web Worker, using WebGPU or WebAssembly. Your photos are never uploaded, because there is no server to upload them to — the whole site is a static page. For anyone tagging client work, unreleased campaigns, or an archive covered by a data agreement, that is the difference between "we could try this tool" and "we cannot".
Related: generate captions for the same batch — the caption comes out of the same pass — or read up onkeywording a photo library that people can actually search.
Frequently asked questions
How many tags does it suggest per photo?
Five predicted tags per image by default, each with a confidence score, plus you can add as many of your own as you like. The tags come from an image classification model, so they describe what is recognisably in the frame.
Do I have to review every tag by hand?
No. There is a confidence threshold: set it to 80% and accept every tag above it in one click, then review only what is left. On a batch of a few hundred photos that turns hours of clicking into a few minutes of judgement.
Can it tag photos already stored on a server or a CDN?
Yes — that is what the CSV mode is for. Export your image URLs to a CSV with an image_url column and an asset_id column, and PicsTag fetches and tags each one, keeping your asset IDs so the export lines up with your existing catalogue.
Will the tags match my existing vocabulary?
Not out of the box, and this is the honest limitation. The model uses its own vocabulary (a general-purpose one, around a thousand common categories). If your catalogue runs on a controlled vocabulary or a taxonomy, treat the AI tags as candidates and add your own terms in the custom tag field — the export keeps both.
What do I get out at the end?
A CSV or JSON file with, per image: asset ID, filename, file size, dimensions, description, the tags you accepted, and the source URL. Only accepted tags are exported — rejected and un-reviewed ones are dropped, so nothing lands in your catalogue that you did not look at.