This article considers geotagging photos from a Mac perspective, looking at automatic and manual methods, and explaining terms such as data loggers, track points, waypoints, and routes. It lists OS X software options for connecting to data loggers, converting track log formats, geo-locating photos, and writing that data to EXIF for both raw and JPEG images. It also covers the importance of time synchronization, what you can do with geotagged photos, workflow, choosing a data logger and controlling it from your Mac.
Introduction
With my blog articles geotagged and mapped, and the launch of geotagicons.com behind me, the next challenge was to consider geotagging my photos in future. Some time ago I blogged about doing this in iPhoto, and although workable for a small selection of images this manual/ best guess option doesn't scale well to 2-3 week vacations when you return with several hundred images and a poor recollection of what was taken exactly where. Before getting started on something (i.e. spending money!) I like to try and gain a reasonable overview of what I'm about to get into. What follows is a summary of my research into the terminology, technology, hardware and software that a budding Mac photo geotagger will want to get to grips with. If you also like to look before you leap then this article may be of service to you. Although written with fellow Mac users in mind, if you're afflicted with Windows much of the article is still relevant.
What is geotagging?
In a photographic context, geotagging is the process of associating a photos with a specific geographic location using at least GPS coordinates.
The coordinates typically encode the position of the photographer who, especially in a telephoto or high altitude shot, could be some distance from the actual subject (e.g. a distant landmark, or 10,000 meters below).
Note: In this article geotagging is used as a synonym for geocoding; differences between the terms are vague at best, although geocoding can include non-coordinate location identifiers such as postal or IP address.
The first step in the geotagging process is matching a geographic location to each photo. There are two methods of doing this: automatic or manual.
Automatic geo-locating: matching to track points
For truly automatic geotagging a few (expensive) cameras—and smart phones (e.g. Nokia N82)—have built-in GPS receivers, and can write coordinates to the image file on-the-fly when the picture is taken. You can also accessorise some existing high-end cameras to do the same (not my Nikon D70). Much more commonly external GPS devices are used in conjunction with your camera.
This type of external GPS device is known as a data logger (or track logger). Your GPS position at each point in time (intervals vary e.g. every second, as set by the device) is recorded as a track point. Digital cameras also time-stamp your images, so the two time stamps can be compared. Wherever the time stamps match (the clocks in both devices should be synchronised), the associated GPS coordinates can be linked to a particular photo.

Matching the track point to the time stamp on a photo in GPSPhotoLinker
The collection of track points associated with each photo session (the period between which the logger is turned on and off) is called a track log. Log files may be saved by the logger in a variety of formats, including NMEA, PLT, Sony LOG, and GPX (GPS eXchange Format, seemingly preferred).
Here is an example track log in GPX format (169KB; opens in a text editor).
GPX track points are recorded in a standard XML format, here containing the longitude, latitude, elevation (altitude), and time:
<trkpt lat="54.96927017" lon="-1.60723905">
<ele>81</ele>
<time>2008-03-04T12:13:26Z</time>
</trkpt>
A typical track log will contain many such track points. Converted to KML (see below), the track points making up the log can be visualised in Google Earth (sometimes likened to a bread-crumb trail):

Part of a track log viewed in Google Earth
The actual "matching" of track point to photo is done by the software that comes with your device or by third-party alternatives. Before we look at accessing the logs and photo-matching, let's take a quick look at the alternative, manual method of geo-location.
You don't need to buy a dedicated photo tracker to use the automatic method; you in-car navigation GPS device may suffice (with appropriate software), as could a GPS trekking product. What matters is the ability to record track logs.
Manual geo-locating: matching to map points or waypoints
Typing the actual coordinates directly into geotagging software is technically a manual method, but use a manual method is far more common when the coordinates are not known—as is the case when you have no data logger. They can be estimated, however, when the photographer marks or centres on the approximate point on a map of the area in which the photo was taken. The coordinates of this point are then taken to be the geo-location of the photo. Google Maps or Google Earth are generally used as the basis for mapping photo location in this way.

Using Geotagger & cross-hairs in Google Earth for manual geotagging
If you do have a data logger geo-locating can also be done manually, but with greater precision. Some devices let you manually enter exact GPS locations as a waypoint. Appropriate software lets you hand-match each waypoint to a specific photo.
Here is an example waypoint in GPX format (1KB; opens in a text editor).
Like track points GPX waypoints are recorded in a standard XML format, here containing the longitude, latitude, elevation (altitude), time, and waypoint name plus other data if available (not shown):
<wpt lat="53.24719666" lon="-1.45717167">
<ele>158</ele>
<time>2008-03-03T08:41:37Z</time>
<name>Stream</name>
</wpt>
Converted to KML, the waypoint can be visualised in Google Earth:

A GPX waypoint converted to KML for display in Google Earth
In the following example waypoints are automatically shown every 50 meters as indicated by an icon. An ordered set of waypoints enables others to retrace your steps and is known as a route:

A short route comprising waypoints at 50m intervals
Using a manual method you may have already finished the geotagging process. If you plan to do it automatically or using waypoints, however, you will first need to access the data on your device, potentially needing to convert it from one log format to another.
Connecting to your device & log conversion
Track logs and wayppoints can sometimes be loaded into geotagging software directly from the device (via Bluetooth or USB), or via a file that has first been exported from the device—with or without a file format conversion. Since the software supplied with your device is likely to be Windows-only, you may need to use a third-party connection/ conversion tool under OS X. Options include:
- GPSBabel+ (free/ donationware; cross-platform; connects to a few devices; the Daddy of GPS file format interchange);
- HoudahGPS (freeware; connects to several devices/file formats; converts logs to GPX, NMEA or KML and looks very pretty doing it!);
- HoudahGeo (€25; connects to several devices/file formats; converts logs to KMZ/ KML only; additional features);
- LoadMyTracks (freeware; connects to several devices/file formats; converts logs to GPX or KML);
- JetPhoto Studio Pro ($US25; connects to several devices/ file formats; converts logs to GPX; crippled freeware version does not geotag to EXIF; additional features);
- BT747 (open source; connects to several devices; converts logs to various formats; exceptionally ugly interface);

Converting log format from a file or device source in HoudaGPS
You will normally want to convert your track log and/or waypoints to the GPX format, since most software that does the actual geotagging will be able to deal with it.
Timing is crucial
As mentioned, automatic matching of location to photo depends upon comparing time stamps in the log with those recorded by the camera. In my initial experience using a variety of software and a couple of cameras, this is surprisingly more difficult than it sounds. It's highly unlikely that your device and camera are keeping the same time, down to the second—even if both are set to GMT/ UTC.
Most geotagging software offers the option to specify an offset, so that you can account for any discrepancy between camera and device clock. GPSPhotoEditor is worth a mention here, because it offers three methods of calculating the offset. One of these methods allows you to zoom in using satelite view in Google Maps to the point where you were standing—and best of all you only need to mark one photo in a set this way, and the offset will be applied to all photos in the set. Very clever:

Calculating the offset using GPSPhotoEditor
Saving the location information to file
The next step in the process is embedding the location information into the photo file.
Whereas blog posts and other text/ (X)HTML-based information can be geotagged with the likes of the ICBM or Geo Tag metadata, or the geo microformat, the standard way to tag images is by embedding GPS coordinates into EXIF metadata (XMP headers are an alternative metadata format). Digital cameras already store information in EXIF format, such as exposure and other camera settings, and EXIF makes provision for additional data such as longitude, latitude, and altitude. Sometimes you can also add other geographic information, such as city or country, to the EXIF metadata via IPTC headers.
There are a number of OS X applications that will load a track log, match it to images you load into the application, and write the GPS data to EXIF. I shoot in raw using a Nikon D70, so my personal interest was in compatibility with the Nikon raw format, NEF. Options include:
- GPSPhotoLinker (automatic or manual via GPX file; NEF-compatible; free/ donationware);
- HoudaGeo (automatic via GPX/ NMEA/ CSV/ Sony LOG file or manual via Google Maps or Earth; NEF-compatible; €25 with 3-image demo);
- PhotoGPSEditor (automatic via GPX/ NMEA file or manual via Google Maps (no waypoints); NEF-compatible; free/ donationware);
- PhotoInfoEditor (manual via Google Maps; NEF-compatible; free/ donationware);
- Geotag Plugin for Adobe Lightroom (automatic via GPX file; NEF-compatible; beta; requires ExifTool).
If NEF compatibility isn't your concern, Mac users have a few additional choices when it comes to geotagging JPEG images:
- Geotagger (manual via Google Earth; free/ donationware);
- JetPhoto Studio Pro (automatic or manual via waypoint or Google Maps; $US25);
- Geophoto (imprecise manual method mimicking Google Earth but much more awkward, or loupe using Google Maps; €/$US20; crippled demo);
- PictureSync (manual via Google Earth; awkward & buggy; $US0-30).
For Windows users GeoSetter (free/ donationware) is NEF-compatible, as is the cross-platform Java-based Geotag (open source; did not run for me under OS X 10.5). Picasa (freeware) can geotag some raw files (including NEF) via Google Earth.
How do you know if geotagging was successful? The easiest way in OS X is to open the photo from the Finder in Preview. Show the Inspector (Tools menu) which should display the appropriate data:

Embedded EXIF-GPS and IPTC headers seen in Preview
Geotagged. So now what?
Some of the applications offer additional features, which may or may not be of appeal, such as export of tracks to KML for viewing in Google Earth, or upload to your Flickr account (remember to set "Import EXIF location data" to "Yes" in your privacy settings). If you like to host your own gallery, it's also possible to integrate Gallery 2 with Google Maps, using the Map module.
To help identify geotagged photos in your online content to other web users, considering using the free "standard" icon for that purpose from geotagicons.com, as in the example below.
Click thumbnail to enlarge image![]()
Mobile speed camera position (view in Preview—& slow down!)
What about workflow?
Your workflow will depend on whether you are working with raw images or JPEG, what software you are using, and what you ultimately want to do with the photos. This is how Dave Wild does it using NEF files first converted to DNG and his Phototrackr:
- Import photos into Lightroom;
- Import track log from PhotoTrackr into PhotoTrackr Pro Software;
- Open imported Lightroom photo folder in PhotoTrackr Pro and write coordinates to DNG files;
- Get Lightroom to re-read metadata;
- Apply tags to photos in Lightroom.
Dave says that during any editing (including in Photoshop) the metadata stays intact, including the coordinates. It's up to you whether you want to apply the location data to EXIF in the raw images (or copies thereof), or just to any JPEGs you make as a result of post-processing.
Beware: What you do with you geotagged photos can cause the loss of your EXIF-GPS data! This includes the use of iPhoto, Photoshop, Flickr Uploader, and Picasa.
A cautionary note if you plan to archive your geotagged images in iPhoto: EXIF information is cached when you first import a photo, so subsequent geotagging may cause the GPS data not to appear in that program. Furthermore, iPhoto can apparently loose the data if you try editing geotagged images with it!
In a similar vein, be aware that when you "Save for Web & Devices" in Photoshop, GPS information along with other metadata will be stripped out (will, not might).
Flickr Uploader (at least versions before 3.0) loses EXIF-GPS if you let it resize your image (thanks Richard!). The Free Flickr eXporter iPhoto Plugin (FFXporter) is a free iPhoto export plugin for Flickr that preserves GPS tags and other EXIF data.
Picasa will wipe altitude data if you use it to manipulate your image.
Update 25.03.08: Once geotagged you'll want to archive your images, perhaps in iPhoto, vanilla folders, or via some other tool. But you'll need a way of retrieving your geodata as well. I've just reviewed CDFinder, an asset manager that catalogues any file on any volume (CD-ROM, DVD, USB drive, etc) recently extended to handle geotags and provide related functionality.
So you want a data logger?
Well, that's the background (a bit long, sorry). Perhaps you want to rush out and buy a data logger? The market for data loggers isn't Mac-friendly by any means, but there are limited options. My preferred device specification was a fair match to Jan's requirements. That is:
- Connects to a Mac without resorting to hacks or booting Windows;
- Non-lithium batteries (AAA's are easier to come by worldwide);
- A display so I can see that the device is working (and as Jan points out, this makes time synchronisation easier);
- Connection over Bluetooth (there may be an unlocked iPhone with GPS navigation in my future?);
- Connection of USB;
- Access to log files from the Mac;
- Affordability.
Your list of requirements or priorities may differ. For me the Holux M-241 seems the closest fit, also featuring power over USB with Mac compatibility provided by BT747 (instructions; failed to launch for me under OS X 10.5). However, it doesn't seem to be available in the UK. Other devices with some degree of Mac compatibility worthy of consideration include:
- Qstarz BT-Q1000/ Platinum via Bluetooth with BT747 and available via eBay in the UK;
- AMOD AGL3080 (driverless, uniquely mounts as a USB drive in OS X; no Bluetooth and seemingly unavailable in the UK);
- Wintec WBT-201 (recommended for use with HoudaGeo via USB or Bluetooth, unavailable in the UK?);
- Garmin eTrex Venture HC (especially if you're also into geocaching or trekking; connects driverless via USB and widely available in the UK).
In making your choice there are some pertinent questions you might ask, the relevance of which should be obvious assuming you've read the rest of the ABC!
- Does the hardware work with your camera?: If you don't have the right kind of hot shoe then your only hardware choice is an external data logger. At this point whether it has Bluetooth or not is irrelevant, because the logger is totally independent. In short, any logger works with any camera.
- Does the hardware work with your computer?: Unless you're happy downloading your logs in Windows, the logger will need to connect to your Mac via USB or Bluetooth. Ease of connectivity is also relevant to modifying device settings (see below).
- Does the software work with your computer?: Even if the device mounts, you probably won't be able to extract the log data with the supplied software. Few loggers come with Mac software, but there are several third party options listed above that allow export and conversion (if necessary) of track logs on the Mac.
- Does software work with your image format?: Not all software can tag raw format images with the data (some products only write EXIF to JPEG files). Luckily there are no cost and low cost Mac options for handling most image formats (as above).
- What do you want to do with the geotagged photos?: You will at least want to write to EXIF, or you're not actually geotagging. Some software also integrates with various services e.g. export to KML, upload to Flickr, etc. and again there is plenty of choice on the Mac for this sort of thing.
It's easy to get caught out by marketing tricks. For instance the budget PhotoTrackr Lite (not Mac connectable) is listed as having no raw support—but this is nonsense since raw support is a software issue. The supplied Windows software may not handle raw, but you could pay the $US20 Pro upgrade fee or use free software (even on the Mac) to geotag raw images with the track log from this device.
Managing your device from the Mac
At the risk of repeating myself, the software supplied with your device is likely to be Windows-only, you may need to use a third-party device configuration tool under OS X if you want to change default behaviour. Options include:
- BT747 is open-source software that permits changing of settings on several devices including the Qstarz BT-Q1000 & Holux M-241;
- gtk-g-rays2 is open-source software that runs on OS X and allows configuration of the Wintec WBT-201 data logger;
- Garmin offer a number of Mac applications for using and managing their products.
A DIY solution
If you fancy giving photo geotagging a spin without investing in additional hardware or software until you're hooked, you may be able to cobble together a solution using an in-car GPS unit and a PDA like I did. That's the subject of a follow-on article, here.
For general discussion and community support concerning geotagging photos, GeoTagging Flickr is probably a good place to hang out. For device-related reviews and news, see Richard Akerman's blog, Richard's Tech Reviews.









Thanks for this very detailed article, Bruce.
Since the geotag icon project I have been a little curious what solutions would be out there to help gather the data and inject it into the images. So, a very timely article.
For me, the choice would probably be a compact keyring type logger, that I can then later pair up to images from two, sometimes three, cameras. Even over one of those soon to be available inexpensive commercial hotshoe units. (I don't have the soldering skills to go DIY)
Ideally of course in the future we will have the option to buy a camera with built-in gps or as a specific accessory; and the camera can record the data along with the picture, so everything is transparent & accurate without having to spend time pairing images & locations and tweaking with a third party application .
Yes, a data logger is certainly flexible as it doesn't tie you down to using one camera—or one type of device for that matter (since geotagging could also be done using a smart phone, Pocket PC, Palm, in-car GPS, and hopefully post-SDK using an iPhone). But a camera like this at a $US250 price-point for truly automatic geotagging is an attractive proposition.
In the meantime if you want to make use of your existing kit then even using a data logger is involved to the point where it will put off all but the more determined from getting in on the act. People need a compelling reason to inject more than the minimum effort into any activity; it would be very interesting to hear from habitual photo geoaggers to learn what motivates them.
Good article Bruce - I shall no doubt dip into it when I tool-up for my next trip.
Having recently bought a new camera (a Pentax because all my legacy lenses are Pentax fit and I didn't want to fork out the huge ££££ for a complete new outfit) I will certainly be exploring the data loggers and will require an aviation GPS unit shortly.
I am impressed with the likes of Flight Master Palm PDA maps with GPS - I need to get head around co-ordinating it all!
BTW Pixelpost, commonly used by PhotBloggers has good GMap integration.
I hadn't considered cross-platform online applications that let you manually geo-locate a photo with Google Maps (or similar) and write coordinates to EXIF—so you're right to mention the possibility David. However, I looked at the Pixelpost demo installation and saw no option to do either: what am I missing? Did you mean that it can display EXIF-GPS data from already geotagged photos and put them on a Google Map (again I didn't find that functionality in the demo)?
Awesome. Thanks for this article.
Your timing is perfect for me. I'm going on a long vacation in a couple weeks and wanted to get a logger to track my adventures and photos. As a new user (and mac user) there's a dense wall of information to go through while researching and this is a nice comprehensive primer.
Lucky you! Be great if you could report back how it went in due course: any issues with connectivity or synchronizing your track logs, what OS X software you found best fitted your needs, etc.
This looks interesting http://www.geotagger.co.uk/
You could buy a lot of data loggers for the £350 the Jelbert GeoTagger sets you back. Or a complete camera with integrated GPS.
and on the PixelPost question (just been through the comments) as from version 1.5 - this version of the addon uses included EXIF GPS tags if they exist to create the image's Google Map location. A button will be displayed with the text 'Use EXIF Tags' to extract the information from the exif. The map is automatically updated with the new coordinates.
That's very thorough! :)
There are so many possibilities with all of this stuff. For instance, I notice that the RoboGeo software for PC's will also geotag audio files recorded with a digital dictaphone. In order for that feature to be there, there has to be people using it - the thought of people who go out and record wildlife sounds being able to place them on a map is fascinating. A quick search turns up some discussions about this and the British Library have a map showing regional accents that you can listen to.
I'd love things to get to the point where news stories are geotagged both on things like the BBC web site and individual pieces on news TV so that you can cherry pick the bits you want based on location.
Lots and lots of possibilities for this kind of thing really :)
Yes that's a use I'd not conceived of, but has very practical applications in tracking (even identifying) threatened or endangered species, for example. I think I'll have to add an audio example to the geotagicons.com site. Thanks Dave!
I saw in your post where Flickr eats the geotags. I thought this too, but it turns out that you need to manually process uploaded photos to have the geotags processed onto the map. If you look at the geotagging FAQ you will find a link to the batch processor which will process and map all your geotags. Check it out:
The FAQ is here:
http://www.flickr.com/help/map/#226
And the link to the processor is here:
http://flickr.com/account/geo/import/
Thanks Phil. Yes, you can painstakingly use the geo microformat to re-associate location information with individual uploads (although the data are not stored in EXIF, so won't be available if the image is downloaded, for example). Where your intended uploads are already geotagged in EXIF, we all need to be aware that at least some Flickr uploaders—in common with other image-handling software—may strip out data that already exists.
But my understanding was that the geo microformat method had been superseded by drag-and-drop on the Flickr Map. For example, this image was placed on my Flickr Map without using the microformat. There's no indication on the image page that it's on the Map, but coordinates are somehow associated with the image. Download the image and you'll see they're not in EXIF. Happy to be put straight if I've got this wrong.
I ordered the Wintec WBT-201 yesterday and I've set an iCal reminder to come back and let you know how it goes. It'll be two months, but I'll be back.
There is a great (unaffiliated) tool that I use to get kmz/kml files from geotagged photos on OS X called PhotoKML. This makes going from photos to a nice output in Google Earth a breeze.
Congratulations on your well-researched article. It taught me a good deal about the available geotagging options. I see you briefly mention Ovolab Geophoto. I'm part of Geophoto's engineering team, and I'd like to point you and your readers to Geophoto 2.0, released just a few days ago. I think Geophoto 2.0 addresses most of the deficiencies reported to us by users and reviewers. Pictures can now be positioned with street-level accuracy thanks to the integrated Google Maps view. They can be matched (individually or in batch mode) to track points from a GPS unit or log file. Also, we now do RAW, and Nikon RAW (.NEF) in particular. Last, but not least, we improved Geophoto's integration with Flickr: you can now display your own Flickr photostream within Geophoto, position your pictures, and Geophoto will automatically write the geotags to Flickr.
@Dhcmrlchtdj. Thanks for the update. I did notice its release, but unfortunately the demo is still crippled by not actually doing any geotagging (i.e. writing data to EXIF) so I was unable to evaluate it. Shame you kept the essentially decorative spinning globe so big and the more useful Google Map so small (which needs search BTW), but otherwise congratulations on what at first glance looks to be a very slick interface.
Great article. I used this to get me started, bought the AMOD AGL3080, took it out and had a blast. Works perfectly in OS X Leopard with GPSPhotoLinker! Thanks for the article!
Hi Jon; the AGL3080 certainly looks like the only choice if it's out-of-the-box Mac compatibility you're after. If it only had Bluetooth...
I use a Garmin 60CSx and Garmin Bobcat & GPSPhotoLinker or Lightroom 2.0 to geotag my travel images. This works perfect.
The only problem is that you need an internet connection to display those locations on a map like Google Maps or so. It would be nice if I could do this also offline with a worldmap on my laptop instead of online. Any idea what map program I could use for that? Bobcat (or Mapsource) shows the tracks your GPS registered but there is no possibility to let bobcat make waypoints based on the GPS coordinates in the EXIF of your photos.
Great article! Lots of useful info.
I'm about to take a 2 week trip out to northern California for some sightseeing, so I'm looking into some geotagging. I found a device called PhotoFinder:
photofinder.atpinc.com
This thing should tag the JPEGs directly -- just put your SD card in it or any attached USB device formatted for FAT32. I don't know how well it will work, but it's not expensive ($89 at costco.com) so I figured I'd give it a try. It should also export KML files directly... The FAQ on their web site says it's coming with a firmware update, but the PDF manual says the functionality is there. Perhaps they just need to update their web site.
@Hans: I don't know of any OS X-based mapping service that would enable you to read and plot geodata while offline. Every "view of map" facility I've come across queries an Internet server.
@Jason: let us know how you find the ATP PhotoFinder; there's a bit of discussion about some of its limitations on this blog here.