Apple Aperture

Aperture is Apple’s professional photo management software. It has more features than iPhoto. This is good, and bad. You can probably do what you want to do with Aperture, you just might not know how. iPhoto is easier to use, because there is less to it.

I wrote a version of the following for a friend who just wanted to know what to do, rather than learn everything Aperture can do.  Therefore it excludes entirely all sorts of Aperture facilities like vaults, which I don’t use at all, but you might want to. I will explain the choices I do make though. I subsequently posted this on a Mac forum, and some asked if there was a permanent place for it.

Well, now there is.


Here goes, starting with an introduction to the Aperture Database, or Library

1.) The Aperture Database

It’s not necessary to know this bit so feel free to skip a paragraph if it sounds complicated. Aperture uses SLQlite, a file-based database, to keep information about all the revisions, edits, EXIF, import dates, and any other data associated with each and every photo you allow Aperture to manage. The Aperture Database ( or “DB” ) is also where versions are kept. More on those later. SQLlite is not a particularly fast DB, but it is simple and reliable ( usually … ). It is file-based and has lots of tiny files held on disk. Therefore, for fast speed, you absolutely must have this DB stored on an SSD ( solid state disk ). Every action you perform in Aperture updates this DB. Every time you open Aperture it runs a DB sanity check, and also whenever you close Aperture. Moreover, when you browse Aperture, you ( generally … more later ) are browsing versions, not the original files. The versions are stored in the DB. So it’s a MAJOR cause of slowness if the DB is on a spinning ( i.e., traditional magnetic ) disk.

How to make sure the Aperture Database is on the SSD ? It’s easy. It’s the location of the Library that Aperture opens on startup. Start Aperture while holding down the Option key to reconfirm that the library you are using is stored on your SSD. Aperture defaults to the last library you worked on on startup, so just confirm it once and you are done. You can switch Libraries or open a new Library from the Aperture File -> Switch to Library menu.

A quick note before going further, on the purpose of this advice. The mission, if you will ! If you follow all these instructions, you will only need ONE Aperture Database, forever, and it will perform like lightning regardless of how many pics you import. Having one rather than multiple Aperture Databases makes finding, sorting and editing your photos much much easier. Which is the whole point of having a photo management system, after all.

Once you have your Aperture Library ( and thus Database ) open and confirmed on SSD, now you have choices where to store the original files. The default for Aperture is to store them in the same directory hierarchy as the Library, but “hidden” in a normal MacOS application Package container.

If you don’t change this behaviour, and browse in Finder to your Aperture Library, you can right-click on it and select “Show Package Contents” just like any app in the Application directory. You will see all your original files under a Masters subdirectory of the Aperture Library. Again, this is normally hidden.

This default is not what I recommend.

The reasons are:

a.) It mixes your originals in with the Aperture Database, in a file hierarchy of Aperture’s choosing. This is “simple”, reliable, but not flexible. How to backup only the originals ? Difficult. How to share the originals read-only to a networked device ? Painful. How to recover the originals if Aperture collapses or you decide to use Lightroom in the future ? Nasty. How to move just the database without moving hundreds of gigabytes of photos ? Impossible.

b.) It means your Aperture Library will grow like crazy. The actual Aperture Database data will only grow at about 15% of the rate of growth of your actual picture files, depending on how large you choose your previews. There is no need to waste your SSD space with original files.

You can safely, and with no performance hit, store the originals on spinning disk away from your DB in a file hierarchy of your choosing. The originals are never written to once stored. All edits and previews are stored in the database, for fast browsing, but the originals are always left read-only and untouched. No writes means you don’t need them on an SSD.

So splitting the Database from the Originals gains you manageability, expandability, and future proofing. if Aperture ever becomes broken, obsolete, or you just find something better, you can find all your original files, in your chosen location with your chosen hierarchy, safely unmolested on disk where you put them.

So … store the originals on spinning disk ( large, cheap ) or even NAS if you must, and store the Aperture Database on SSD ( small, expensive ). This is called having Referenced Masters. The database just has a link, or reference, to the location of the actual original file, rather than containing the actual file.

2. ) Referenced Masters

All you have to do to ensure this, is on Import, under “Store Files”, do NOT select “In the Aperture Library”. Select anywhere else.

Under “Subfolder” you can choose your file hierarchy. Aperture gives you all sorts of possible hierarchy options, or you can make up your own by selecting “Edit”. Remember to include the forward slash character when making your own … there is a big difference between 2013/Jan/My Project/filename.JPG and a directory full of files called 2013JanMyProjectFilename.JPG. Don’t ask how I know this.


It is changeable in the future if you change your mind, but it’s time consuming. Better to get it right first time. You may already have a system, like “Image Year / Image Month / Image Name” which you could certainly use. I tend to import my files as “Projects” ( project name is right there on the Import pane ) and give them a meaningful name. Such as “2013 Jan – New Year Drunkenness”. Then I simply store them under my preset “Current Year / Project Name”. So I get a folder hierarchy like :

2012/2012 Jan – Project Name 1
/2012 Jan – Project Name 2
/2012 Feb – Project Name 1
2013/2013 Jan – Project Name 1

and so on. So I am including project metadata ( year / month / description ) in the actual directory name, as well as in the Aperture database. There is a reason for this redundancy. Which I will explain shortly.

The good thing is, once you have decided your hierarchy, you don’t need to change it again. Aperture remembers, and all your subsequent imports will follow your rule. No extra clicking required.

As the hierarchy thing is the most important decision, I’ll add a few “learning” points I made 🙂

a.) Be careful of using “Image Year” or “Image [anything taken from EXIF]” as a subfolder. It sounds great – all photos arranged automatically by year/month taken ! But, potential problems. Firstly, imports often span two months. I’d end up with two folders, 2012/09/2012 Sep – Phuket and 2012/10/2012 Sep – Phuket. Which is confusing and a pain to manually navigate at the disk level.

That’s why I hard code the date ( Year and Month ) in the name of the project too. It’s so easy to scan through my photo collection at the disk level, just a year-ordered collection of subfolders with meaningful names. One day, if I ditch Aperture, or break it, or whatever, I don’t have to rely on Aperture having the photo project metadata. That’s the reason for the redundancy.

b.) EXIF may be unreliable or missing. So sometimes, a picture taking in 2004 on a camera that doesn’t support EXIF, would be imported under the current year instead of 2004, as Aperture couldn’t find any EXIF. Most confusing. Or a bunch of files restored from Windows backup DVDs would be imported under the year the files were created, not the photos taken. Nasty. If all your photos have reliable EXIF, no issue, but … worth considering.

Think about the hierarchy and try a few test imports to get it how you want before doing your whole collection.

Spending time here, more than any other activity, will serve you well in the future.

c.) You can immediately check if a file you are looking at in Aperture is “Referenced” or not – it will have a little arrow and rectangle in the lower right corner of the preview. Right click and “Show Referenced File” or “Reveal in Finder” and you’ll see the original untouched file, regardless of any edits. Very reassuring.

3. Minor and not so minor other things

Assuming you’ve got an Aperture Database on SSD, and Referenced Masters all setup to import into a good hierarchy on another disk, you are just about there. There are some minor and not so minor other things worth mentioning.

– The referenced masters should remain just that, masters. Untouched and not moved around. It’s not the end of the world if you go in and change the location of the masters ( Aperture will just ask you where they are, next time it tries to show the file ) but it’s unnecessary. Aperture lets you non-destructively do anything you want to your files, with complete “revert to master” at any time, precisely because these masters are held as inviolate. Obey this 🙂

– if you REALLY want to change the hierachy at some point, do it from Aperture rather than with Finder. There is a command “File -> Relocate Originals” which can be used to do just that.

– Under Aperture Settings : General. Disable Faces until your Library is all sorted out. It takes some CPU while it works. Switch it back on if you need it after your Library is fairly stable. Enable gestures.

– Under Aperture Settings : Import. Select No Application for what to do when a camera is connected. Personal choice, but I don’t like Aperture springing into life when I put an SD card in the slot. It’s no bother to me to open Aperture when it’s needed. I use “Camera Previews” but it’s a non-issue if you don’t use RAW.

– Under Aperture Settings : Previews. Check New Projects Generate Previews. Share Previews always. Then, most importantly, choose a smallish size for previews ! I use 1280×1280. The significance of your choice here is NOT MINOR ! Remember many chapters ago I talked about the Aperture Database, the thing that holds all your edits and so on ? Yes it contains the previews too ! Meaning, what you see on Aperture as you use it are previews, coming from the Database. NOT your original files. Pause. Got it ?

Every time you scroll, or select a new project to view, you are reading previews from the Aperture Database. Make them smallish. They will load faster. Aperture will operate faster. Your Aperture Database will remain a manageable size.

There is no downside. Every time you actually do an edit, it will load up the Master ( read only ) and write back a preview. If you want to export a preview, you can do so AT ANY SIZE. Aperture just tracks your edits and simply applies them to the full sized master as you export. Or you can export the ( always untouched ) Original master file. At any time. So there is no need to have huge previews.

Under Aperture Settings : Photo Stream. I switch it off. It was marginally useful but be aware it takes bandwidth ( uploading to Apple servers ) and a load of space ( 5GB … ) in your Aperture Library to hold the stream. Use it if you need it, of course.

Under Aperture Settings : Web. The Facebook integration is slow. Changing the names of files uploaded on Facebook changed the names of those files in Aperture. Not what I wanted. I just switched it off. If I want to upload to Facebook, I just Export to my desktop and upload as normal.

Seems quicker.

– Raw files. Personal choice and far be it for a rank amateur like me, etc etc, but … consider using RAW. I can’t see a downside. It used to be necessary for non-pros to use JPG as raw files were too big, took too much disk space, too much processing power, weren’t natively supported by the OS, and were a pain to manage. Well, none of that is true anymore. Macs read RAW files natively. Aperture allows you to manage the files beautifully. You have CPU and disk space to go.

And RAW is the negative to JPEGs print.

Aperture makes a JPEG “print” from each RAW with default settings as you import, or you can alter to suit your requirements ( a bit less noise, correct the white balance perhaps ). Once you’ve allowed the camera to output the JPEG though, you’ve lost the RAW ! Whatever sharpening, white balance, noise and colour choices were programmed in by the camera maker, that’s it. They have no idea what look you are trying to capture. Sure you can alter a JPEG later, but you are altering the “print” – you’ve already discarded the negative. For someone with as much invested in quality equipment as yourself, I’d consider it. Even if you do nothing other than shoot RAW and never edit, at least you’ll have that option open in the future.

Lecture over 😉

And next …

4. Folders and Projects and Albums and other stuff
Aperture allows you to arrange how you view your photos entirely separately from how you store them on disk. I use a simple “Folder -> Project” setup.

Each year is a Folder.
Each import is a Project.

When I Import, before hitting the “Import X photos” button, I first click on the folder ( “2013” for example ) before naming the Project in the Import pane. This makes sure the Project is shown under the right folder. It’s no issue if you accidentally forget to click the folder first. Just drag the Project to the right folder afterwards.Remember I use names like “2013 Jan – Rabbit” as I want the folders on disk to maintain some project metadata, as redundancy.

Important : After you’ve imported, anything you do in the left-hand sidebar as far as arranging your photos in albums or projects, does not affect how they are stored on disk. It’s entirely up to you how you use folders/projects/albums.

5. And finally some proper techie stuff 🙂

Backups !

Obviously ensure that your Aperture Database AND your Referenced Masters ( wherever you store the original photos ) are backed up. Time Machine is the obvious choice. I’m completely insane about backups, so my system is doubtless over the top, but for your amusement :

Time Machine backs up the whole computer – SSD ( containing the OS, Apps, and Aperture Database ) and spinning disk ( Internal 2TB SATA drive, containing my development files and Aperture Masters.
Nightly, I use Carbon Copy Cloner to make a clone of the SSD to a spare internal SATA disk. Carbon Copy Cloner wakes up the computer at 2am, mounts the disk, clones the SSD, makes the clone disk bootable, dismounts the disk, and sleeps the computer. This gives me, at any time, a second bootable OS disk which is never more than 24 hours out of date. Yes I could do the “replace SSD and restore from Time Machine” thing, and have done in the past, but it takes time. Whereas holding down the B key on booting and selecting my clone disk takes no time at all. Overkill, but, I had the disk spare and it’s put to comforting use.

Weekly, I use Carbon Copy Cloner to clone the entire Aperture Masters from the 2TB disk to yet another internal SATA disk. ( Love the internal storage capacity of the Pro ! ). Reason again, is speed of recovery. I have 1/2TB or so of photos. A Time Machine restore would take half a day. I like having a copy online. Also helps if I have a “senior moment” and blow up my 2TB disk accidentally while messing around.
Offsite backups in realtime to of my entire Aperture Masters tree. This is my “house burns down, now what?” recovery option. Would be dog slow to recover, but I could recover. Enough said.

If you have a whole heap of disk, I’d recommend using some of it for backups. Over and above Time Machine. Maybe use an internal spinning disk for the Aperture Masters ( spinning disks are so cheap now ) and backup the lot to a NAS folder or something.

Aperture is a good product. Lots more functionality than iPhoto ( which is also a good product, simply more limited ) and I haven’t touched most of it here.

Hope that helps someone.


4 thoughts on “Apple Aperture

  1. Yup … I’m that friend who asked … and so glad you have published this for others !! A BRILLIANT set of guidelines that just does wonders in improving the workflow, most especially the performance of Aperture when it comes to the “size” of the library and how agile and responsive it is. An absolute GEM of a guideline !!
    Domo !! 🙂

  2. Anindya

    Amazing explanation !
    I just switched to Mac and aperture. For last 2 months I spend almost $125 usd to learn aperture and purchased lesson from different source. But non of them explained much on refferenced library. Consistency is key was well explained by you. And your explanation was absulatelu to the point.

    All the best!

  3. admin

    Glad it was useful !

  4. […] now you know what a hopeless case I am ( was ? ). Digital I still use Apple Aperture until it stops working or I find something else other than Lightroom. Endless messing with photos […]

Leave a Reply

Your email address will not be published. Required fields are marked *