JpgKeywords is a desktop application for Windows designed to help you
efficiently manage and edit keywords (also known as tags) in your JPG
photos.
Adding keywords to your photos makes it easier to organize and later find them based on specific topics, events, locations, or any other personal criteria.
Unlike many other tagging tools, JpgKeywords is built specifically for speed and efficiency when working with large photo collections. The most time-consuming part of keyword management is manually assigning tags to hundreds or even thousands of photos. This task is often tedious and slow — and this is exactly where JpgKeywords excels.
JpgKeywords provides a rich set of features that allow you to:
In practice, tagging photos with JpgKeywords can be several times faster compared to using other programs.
JpgKeywords works entirely offline and stores everything locally on
your computer.
It does not require an internet connection, and no data is ever sent anywhere.
[TOP]
JpgKeywords is built to help you
work with photo keywords as quickly and intuitively as possible.
When you open the main window, you’ll see two main areas:
At the top, the toolbar provides quick access to essential actions:
Each photo in the grid displays its keywords, timestamp, camera model, and even GPS data if available. As you add or remove keywords, these updates appear instantly — what you see is always the current state of the file.
The keyword list on the left allows you to drag and drop tags directly onto photos. Below that, you’ll find your recent keywords , making it easier to reuse frequently used terms when working with similar images.
At the bottom, the status bar shows the current count of visible keywords and photos, as well as how many are selected. This helps you keep track of your progress, especially during large tagging sessions.
All keywords are written directly into the JPG files using standard metadata — there’s no internal database, so your keywords travel with the files wherever they go.
Everything works offline, and no data ever leaves your computer.
Both the keyword list and the photo grid support right-click context menus with a variety of operations tailored to the selected items.
In addition to keyword tagging, JpgKeywords also supports editing other metadata, such as:
These extended features make it easier to organize your photo collection based not only on keywords, but also on time and location.
[TOP]
Since the main purpose of JpgKeywords is to help you tag your photos quickly, the program offers several convenient ways to add keywords.
You can also copy all keywords from one photo and paste them into another photo — or several photos at once.
Example:
Photo1.jpg has: "aaa", "bbb"
Photo2.jpg has: "ccc",
"ddd"
After copying from Photo1 and pasting to Photo2, it will have: "aaa",
"bbb", "ccc", "ddd"
JpgKeywords ensures that keywords within a single photo are unique . If you try to paste a keyword that already exists, it won't be duplicated.
Copy/paste works across all keyword sources, including:
When working with thousands of photos and hundreds of keywords, scrolling through long lists can be slow. JpgKeywords provides a powerful and fast way to find keywords by simply typing.
Method 1: Using the “Filter keywords”
Field
Method 2: Just Start Typing!
This flow minimizes clicks and accelerates your tagging process.
Pattern:
If the keyword doesn’t exist, simply add it:
[TOP]
To remove keywords from one or more photos,
select the photo(s) in the thumbnails grid and press
Del,
or right-click
and choose "Delete Keywords" from the context menu. This
will open the Delete Keywords
dialog.
In this dialog, you’ll see a list of all keywords found in the selected photos. From here, you have several ways to delete keywords:
To help you manage long keyword lists, you can use the Check All and Uncheck All buttons to quickly select or deselect all items in the list.
Deleting keywords is a sensitive operation, so JpgKeywords uses a confirmation prompt — but only when it really matters:
You can customize this behavior in Options, where you can choose:
At the bottom left of the
dialog, the Columns
dropdown allows you to change how keywords are
arranged.
This option is useful when there are many keywords — showing them
in multiple columns may make the list easier to scan.
In most cases, however,
the default single-column view is sufficient.
[TOP]
If you need to rename or correct a keyword across multiple photos, JpgKeywords provides a fast and simple way to do it.
In the dialog:
The old keyword will be removed, and the new one will be added in its place.
Replacing keywords is most useful when you want to change a keyword in many photos at once. Here’s a typical workflow:
Although JpgKeywords treats keywords as
case-insensitive
when filtering (e.g. Dog, DOG, and dog are considered
equal),
it still stores keywords
exactly as entered — preserving
capitalization.
For example:
This is a useful way to standardize the formatting of your tags across your entire collection.
[TOP]
JpgKeywords offers multiple powerful ways to filter
photos based on their assigned keywords and metadata.
This helps you quickly locate specific groups
of images, even in large collections.
You can remove any active filter and show all photos again by clicking the Clear Filter button above the thumbnails grid.
This is the simplest and fastest way to filter by a single keyword.
You can repeat the process with a different
keyword.
To clear the filter, click Clear
Filter
.
Click the Quick Filter button to open the Quick Filter window.
This feature helps you find photos that contain specific combinations of keywords — even when you're not sure what combinations exist.
The interface is organized into cascades: columns of keyword lists that update dynamically based on your previous selections.
For example: if “Cat” is selected in the first cascade, the second cascade shows only keywords that appear in at least one photo that also contains “Cat”.
You can add up to 10 cascades (minimum is 2).
Use the Add Cascade and Remove Cascade buttons to adjust
their count.
Auto focus next cascade on click:
When enabled, this
option lets you continue typing in the next filter box without using the mouse —
making keyboard navigation faster.
When disabled, you can scroll the current cascade with
arrow keys.
The top of the window displays the currently selected keywords and the number of matching photos.
To apply the filter, click OK. To cancel, click Cancel .
Click the Advanced Filter button to open a feature-rich filtering dialog.
You can filter photos by multiple criteria:
Keyword-based conditions:
To use these filters:
Click OK to apply the filter or Cancel to discard.
4. Filter Only Selected
This filter allows you to isolate a custom selection of photos:
Only the selected photos will remain visible — useful for focusing on a specific subset, like photos from an event or a particular range.
Example: A folder has 1,000 photos, but you want to work
only with those from a birthday party (e.g., photos #200 to #300).
Just select them and apply this filter to hide everything
else temporarily.
You can also filter photos directly from a photo’s own keywords.
This works exactly the same as selecting that keyword from the main keywords list and pressing F3 — the thumbnails grid will be filtered to show only photos containing the selected keyword.
You can clear any filter at any time by clicking Clear Filter.
[TOP]
In addition to managing keywords, JpgKeywords also allows you to assign, view, and organize GPS coordinates for your photos — a feature useful for geotagging and location-based sorting.
The main list on the left side of the window can operate in two modes, selectable via the tabs at the top:
To switch between these modes:
In Location mode:
To assign GPS coordinates to photos, follow these simple steps:
Once the Locations list contains coordinates, you can assign them to photos:
You can also:
To remove GPS coordinates from one or more photos:
To open a location in Google Maps:
The browser will open and show the exact coordinates on Google Maps — perfect for verifying or editing locations.
Tip: You can quickly spot photos
without GPS info — they are labeled with “< No GPS info
>”
in the thumbnails.
To filter and display
only such photos, use the Advanced Filter and enable the option
“Filter by GPS coordinates”.
[TOP]
JpgKeywords allows you to view, assign, and edit the Date Taken value for your JPG photos. This is useful when the original date is missing or incorrect, and you want to organize your photo collection chronologically.
You can add or change the Date Taken in two modes:
To open the Set Date Taken window:
This opens a floating , non-modal window — meaning it stays open while you continue selecting files or navigating through your photos.
The date editor allows you to manually set the full date and time:
Once the desired date and time are set, click Apply to save the value to all currently selected photos.
You can resize the editor window using Ctrl+Num+ and Ctrl+Num– (from the numeric keypad).
When viewing photos in full-screen mode (opened by double-clicking a photo in the main grid), you can still use Ctrl+D to open the Set Date Taken window.
In this mode, the editor includes:
This workflow is ideal for manually reviewing and tagging each photo one by one.
If you want to remove the Date Taken metadata from one or more photos:
Tip: You can filter and find photos
with or without a Date Taken value using the Advanced Filter
.
Use the option "Filter by date taken" to locate files
that are missing this information.
[TOP]
JpgKeywords allows you to quickly reuse the last added keywords and apply them to new photos with a single key press.
In JpgKeywords, pressing F4 repeats the last keyword add operation — saving time when tagging similar photos.
You can activate this function in two ways:
Each time you add keywords to a photo — whether by dragging or pasting — JpgKeywords remembers the exact keywords used.
Then, at any moment, you can:
This avoids the need to drag or reselect the same keywords multiple times.
Let’s say you’re tagging photos of your family and many photos feature "Uncle Bob", but not all of them.
This is much faster than dragging the keyword each time.
The feature remembers all keywords from the last add operation — not just one.
For example:
Tip: You can combine this feature with keyboard
navigation.
Use arrow keys to move through thumbnails, then press F4 on each
photo that needs the
repeated keywords.
The F4 shortcut is context-sensitive — it works in both keyword and GPS modes.
This allows you to quickly assign the same location to multiple photos in the same way — just select photos and press F4 .
[TOP]
The Keyword List is the main list located on the left side of the main window, next to the thumbnails grid.
When a folder is opened using the Open Folder button, JpgKeywords scans all JPG files in that folder and its subfolders. It reads the keywords from the metadata of each image and populates the keyword list with all keywords found.
Note: JpgKeywords does not use a local database to store keywords. Keywords are always read directly from the JPG files. If the list is empty after opening a folder, it means none of the photos currently contain any keywords.
Once populated, the Keyword List can be interacted with using a right-click context menu. The following operations are available:
1. Add Keyword to List (Ctrl+Enter)
2. Remove Keyword from List
3. Copy Keywords (Ctrl+C)
4. Paste Keywords (Ctrl+V)
5. Export Keywords to File
6. Import Keywords from File
7. Merge Keywords from File
8. Merge Keywords from Images in Folder
9. Filter By This Keyword (F3)
The keyword list is a powerful tool that helps you manage, assign, and reuse metadata efficiently across your photo collection.
[TOP]
JpgKeywords includes a full-screen photo viewer that allows you to browse your images one by one in a distraction-free interface.
You can enter the viewer by:
Once a photo is opened, you can use your keyboard to navigate:
← / → arrows - Go to the previous
/ next photo
Home - Jump to the first photo
End - Jump to the last
photo
ESC- Exit full-screen mode or close viewer
Alt + Enter -
Toggle full-screen mode
on/off
If the grid was filtered, the viewer will show only the filtered photos , not all images from the folder.
At the bottom of the screen, a status bar displays your current position, for example: Image 4 of 9
At the top of the viewer are several checkboxes that control the visibility of metadata over the image:
These settings allow you to choose how much context you want to see while viewing images.
Tip: You can still use Ctrl+D inside the viewer to set Date Taken while browsing photos one by one.
[TOP]
The View Statistics
window provides an overview of your
current photo collection, displaying useful metadata summaries and keyword usage
patterns.
You can access it from the
menu View → View Statistics or by
clicking the corresponding toolbar
button.
The window is divided into two sections:
This section displays general statistics for the currently loaded photos:
Additional metadata info:
The lower part of the window contains three tabs with detailed breakdowns:
Keywords Tab
Displays a list of all keywords and how many times each has been
used across the current set of
photos.
Files Tab
Shows how photos are distributed by the
number of assigned keywords.
For example, how many files have 0, 5, or 10
keywords.
Models Tab
Shows which camera models were used to
take the photos.
Both manufacturer and model name are shown, along with how
many files were taken with
each.
One powerful feature of the Statistics window is that it supports direct filtering:
When you double-click, the Statistics window automatically closes and the main grid is filtered accordingly .
These filters can also be created via the Advanced Filter , but this method offers a faster and more visual way to narrow your selection.
Copy to Clipboard – copies the data from the currently active tab into text format for use in reports or spreadsheets.
[TOP]
The View Statistics By Date window provides a visual overview of your photo collection
organized by calendar date
.
It helps you quickly see how many
photos were taken on each day of the year and filter them accordingly.
You can access this window via:
The window displays a calendar grid:
Cells are color-coded : higher numbers are shown in deeper green, helping you spot active photo days at a glance.
At the top of the window is a year selector :
You can also use the Previous Year and Next Year buttons to move between years quickly.
Only photos that have a valid Date Taken value are included in this
view.
You can see how many such files
exist in the "View Statistics" window, under “Files with Date Taken”.
This form is not just informative — it's interactive.
When you right-click a cell (a specific date), a popup menu appears showing:
You can use this list not only for viewing, but also for filtering:
[TOP]
JpgKeywords allows you to sort the photos in the grid using a variety of
criteria.
You can access sorting options from the main menu:
Sort.
Sorting helps you control the order in which thumbnails appear, making it easier to navigate and organize your collection.
The following options are available under the Sort menu:
File Name with Path
Sorts files by their full path , including folder
and file name.
Useful when organizing images by directory structure.
File Name
Sorts
files by file name only , ignoring folder
paths.
Useful when you're working with photos from different locations that
have similar naming schemes.
Date Taken
Sorts files by the Date Taken.
Photos
without Date Taken are always placed at the end, regardless of sort order.
Count of Keywords
Sorts files based on the number of
keywords assigned
to each photo.
Similarity to the Selected Image by
Keywords
Sorts photos based on their
keyword similarity to a selected reference
photo
.
How it works:
This is useful for grouping visually or thematically related images.
Distance from Selected Image by GPS
Coordinates
Sorts photos based on
geographic distance from a selected reference
photo
(with valid GPS
coordinates).
How it works:
In this mode, the thumbnails will also display the distance next to each GPS value (in the Locations tab).
Camera Model
Sorts photos by the camera
model.
Useful for separating images taken with different devices.
Random
Sorts
the photos into a random order. Every time you choose this option, a new random sequence is generated.
At the bottom of the Sort menu are two mutually exclusive options:
These determine the direction of sorting for all criteria (except "Random").
You can toggle between them to quickly change how items are displayed — for example, oldest to newest or newest to oldest.
When JpgKeywords starts, the default sorting mode is:
You can change it at any time using the Sort menu.
[TOP]
JpgKeywords allows you to copy or move
selected
photos to another folder.
This is particularly useful after
filtering — for example, when organizing photos by keywords, camera model,
or date.
You can access this feature via the right-click context menu:
The dialog allows you to:
Only the currently selected files will be copied or
moved — not all visible files in the grid.
Use Ctrl+A if you want to select all visible files
before proceeding.
If needed, you can clear the list of recent folders using the Clear List button.
Tip: Use filtering to narrow down the set of photos before copying or moving — for example, by keyword, camera model, or Date Taken.
[TOP]
JPG image files can contain embedded metadata that describes various
properties of the photo.
There are three main metadata standards:
JpgKeywords works with selected fields from the EXIF and XMP standards. It does not use IPTC metadata, and does not modify any fields other than those described below.
When you edit photos using JpgKeywords, the program writes metadata directly into the JPG file . The fields it modifies are:
Metadata that is read (but not written)
JpgKeywords also reads some additional metadata fields, but does not modify them. These are used to improve the display of thumbnails or to enable filtering:
No other EXIF, IPTC, or XMP fields are read or processed by the program.
JpgKeywords is careful not to disturb any
metadata fields it doesn’t use.
When you edit a file (e.g. by adding
keywords, assigning GPS coordinates, or setting the date), only the relevant
fields listed above are updated. All other metadata remains unchanged.
The program does not rely on a database to store this information. Instead, changes are applied immediately and permanently to the image files themselves.
JpgKeywords uses the powerful tool ExifTool by Phil Harvey to handle reading and writing metadata.
Tip: Any changes you make to metadata in
JpgKeywords take effect immediately.
There is no need to manually save or
export – the file is updated in
place.
[TOP]
JpgKeywords supports a wide range of keyboard shortcuts to speed up navigation and editing. Below is a list of available hotkeys, grouped by context.
Tip : Many actions also have equivalents in the menus or context menus, but using hotkeys can make your workflow significantly faster.
[TOP]
JpgKeywords supports loading and saving snapshot files — special JSON-based files with the .kw_snapshot extension — to speed up working with large, already-tagged photo folders.
A snapshot is a file that stores:
Opening a snapshot allows you to browse and filter photos without re-scanning the files on disk.
When JpgKeywords opens a folder normally (via Select Folder), it must:
Even though JpgKeywords is optimized for speed and uses all CPU cores, this process can take time — especially for large folders.
Snapshots let you bypass the scanning process. Once you save a snapshot for a folder, you can reopen it instantly, regardless of how many photos it contains.
Snapshots are ideal for:
Note : Snapshots should only be used for folders that are already tagged. You can open a snapshot and view metadata, but editing metadata from snapshots is discouraged — instead, use Select Folder.
To save a snapshot:
To open a snapshot:
From the menu, choose File → Open Snapshot...
Select a previously saved .kw_snapshot file.
Alternatively, you can open a .kw_snapshot file directly from Windows File
Explorer,
if the option “Add ‘Open with JpgKeywords’ to context menu in
Windows Explorer” is enabled in the program settings.
The folder's thumbnails and metadata will be loaded instantly.
Snapshots assume that the cached thumbnails still exist. If the cache is deleted, images may not appear until regenerated.
Snapshot files are static — they do not update automatically. If any of the following occurs after the snapshot was created:
…then the snapshot may no longer reflect the actual state of the folder. In such cases, simply delete the outdated snapshot and save a new one.
[TOP]
JpgKeywords can be used either in registered mode or as an unregistered (demo) version.
The unregistered version is fully functional, but with
one limitation:
You can assign no more than 5 keywords per
photo.
After registering the program, this limitation is removed, and you can freely assign as many keywords as needed.
To register the program, enter your license key using the main menu:
Help → Register Program...
A dialog will appear where you can enter your registration key. Once the key is verified, the program will switch to the fully registered mode, and the keyword limit will be lifted.
[TOP]
Frequently Asked Questions
Q: Where does JpgKeywords store
keywords?
A: JpgKeywords stores keywords directly
in the metadata of JPG files, specifically in the XMP-dc:Subject field. Keywords
are saved immediately to the files as they are added.
Q: Does JpgKeywords use a
database?
A: No. JpgKeywords writes keywords directly and
immediately into the JPG files.
There’s no need to import or export photos,
and no need to synchronize anything.
The JPG files themselves act as the
database. Once a photo is tagged, it can be renamed or moved to another folder
or computer — the keywords remain embedded in the photo.
Q: How many keywords can be stored in a single
JPG file?
A: There is no
limit.
Note: The unregistered (demo) version of JpgKeywords
has a limit of 5 keywords per file. After registration, this limit is
removed.
Q: What characters are allowed in
keywords?
A: Any characters in any language are
allowed. A keyword doesn’t have to be a single word — it can be a phrase. For
example: "My vacation at sea" or "My uncle Bob's
birthday".
Q: Can other software recognize keywords added
by JpgKeywords?
A: Yes. The
XMP-dc:Subject field is a widely supported metadata standard
and is recognized by all major photo management software.
JpgKeywords
simplifies the most difficult and time-consuming part of working with photos:
tagging.
Q: Does JpgKeywords support structured
(hierarchical) keywords?
A: No. JpgKeywords uses a flat keyword
list.
Supporting structured keywords would require a local keyword database
to store the hierarchy. However, this would limit compatibility, as each
software product handles keyword hierarchies differently. Once a file is moved
or emailed, the hierarchy could be lost.
JpgKeywords aims to avoid locking
users into a proprietary system — the keywords it writes are portable and
compatible with any other software.
Q: Why is the keyword list empty after opening a
folder?
A: This means that none of the JPG files in the folder
currently contain any keywords.
Q: Does JpgKeywords require an internet
connection?
A: No. JpgKeywords works entirely
offline, locally on your computer. All you need are your photos.
Q: Does JpgKeywords reduce image
quality?
A: No. JpgKeywords never modifies the
photo data itself — only the metadata is changed.
Q: What about other metadata in JPG
files?
A:
JpgKeywords can write to the following metadata fields:
All other existing metadata (EXIF, IPTC, XMP) is preserved and remains unchanged.
Q: Why use JpgKeywords instead of other photo
tagging software?
A: The key advantage of JpgKeywords is the speed and efficiency of
tagging.
Its primary goal is to simplify the most difficult task in photo
organization — manually tagging thousands of photos with hundreds of personal
keywords — and to make this process significantly faster than in other tagging
programs.
Q: What is exiftool.exe in the JpgKeywords
installation folder?
A: exiftool.exe is a command-line tool used to read and write
metadata. JpgKeywords uses ExifTool to edit photo metadata.
ExifTool is an
excellent and powerful utility created by Phil Harvey. Learn more at: https://exiftool.org/
[TOP]
JpgKeywords is distributed in two formats:
Installer Version (.exe)
Portable Version (.zip)
Installer Version
Use the
standard Windows uninstallation process:
Portable Version
Simply delete the folder where
you unzipped the program.
[TOP]
The latest version of JpgKeywords can be downloaded from the official website: https://eedsoft.com/
For questions or support, you can contact the author (EedSoft) by email at: support@eedsoft.com
[TOP]