Home Link

Hello, my name is Brett Terpstra, and it’s nice to meet you. Elegant solutions to complex problems. Curious?

Some suggestions for better tagging

Some suggestions for better tagging Tagged:
Dec 16, 2011 (158 days ago)

Image of documents in foldersSince publishing my first article on tagging and appearing on MacPowerUsers, I’ve been asked many times for more specifics on my tagging system. I’ll start by telling you that I don’t have all of the answers; what I’m sharing here is what I’ve learned after a few years of constant tagging.

On tagging

OpenMeta is the most useful tool in my tagging toolbox. It allows me to attach tags to anything with a filesystem representation: websites, documents, photos, source code, emails and more. Before OpenMeta we had to make do with whatever fields Spotlight would search, which was Finder comments on files, and really no options on emails and other items accessed outside of Finder.

Now that we have OpenMeta1 and a plethora of tools (I highly recommend Tags.app) to work with, tagging is a real option. We just have to figure out the best way to make use of it.

Things I’ve learned

The goal of tagging is to associate files into groups that wouldn’t be feasible using a folder hierarchy. As I’ve mentioned before, I still use a shallow hierarchy, especially for grouping project files together. The idea of “one big pile” is as frightening to me as it is to most people. I use tags to create additional groups that might not otherwise be possible, bringing together files and other objects that might be related in ways that a folder reflects.

The primary problem you run into is that tag collections get out of control, and navigating them isn’t any faster than drilling through folders and mailboxes. This happens because multiple forms of a tag are used, or long after the object is tagged the original associations are forgotten. I’ve learned this the hard way, and on multiple occasions.

There are two basic approaches to tagging:

  1. Tag with anything and everything you could possibly associate with the object (file, email, photo, etc.). It’s a free-association tag-for-all that results in a huge collection of tags. This is navigable, but often results in messy tagging.
  2. Tag sparingly, only using tags that will be easy to associate other objects with. Anything that is searchable in text or other metadata is left out of the tags. This is the method I’ve come to use.

What I’ve learned is to do follow three obvious-sounding rules: tag intuitively, intelligently, and consistently.

Intuitively

Drill down

I typically limit myself to three levels of tags. Top-level tags encompass an overall topic or broad scope that the object falls into. For example, if it’s a website, I tag it with the primary keyword that led me to the page, or the subject I was interested in when I followed the link. If it’s a project you’re working on, a client’s name is probably the right choice for a top-level tag. Tags such as “email,” “communication” or “research” aren’t top-level tags. If used at all, those are third-tier.

Second-tier tags divide the group into subsections. If your top-level tag is a client name, then second-tier tags would include a project name or other unique identifier that can be shared across all related files. If you consider your top-level tag specific enough for narrowing a project down in a future search, just skip to third-tier tags.

Third-tier tags are where you begin to cross-pollinate the tag groups. These tags are going to be common tags across multiple top-level groups. Tags like “research,” “approved,” “communication,” etc. can make sense here. This comes down to personal style. The only real rule is that they have to be tags you’ll consistently use elsewhere within other scopes. They’re what make this different from just using a folder hierarchy.

This pattern allows you to view your tag groups in a drill down fashion. If you tag with two or three levels, it increases the ease of browsing in various situations. If you were always going to look for a file as CSS3, you should just use a folder. It’s nice to be able to browse for all your web design articles, but maybe you’re just interested in the CSS articles at the moment. A search for bookmarks tagged “tutorial” and “CSS3” will quickly produce all of the relevant articles you’ve found in your web browsing.

Plus, you can cross groups: an article that covers html, javascript and CSS would get tags for all three, assuming I would be interested in all subjects in the future. If I dealt only in CSS, I wouldn’t bother tagging with the other topics, it would just pollute my tag collection.

Choose tags that will be useful next year

“What will I search for when I’ve forgotten this item exists?” It’s not always an easy question to answer. The basic rule is to take what first comes to mind and ask yourself that question. Is the first association you make related to current circumstances or events? You might not have that association in a year. You want to use tags that come to mind easily, but double-check yourself to make sure it will be as front-of-mind when the time comes to search.

For example, if it’s a website, tag it with the primary keyword that led you to the page, or the subject that you were interested in when you followed the link. If it’s a project you’re working on, a client’s name and the scope or project name are probably the right choices for top-level tags.

There are a lot of edge cases. You get better at it after you’ve had to deal with your own tags for a few years.

Intelligently

These are common sense rules that make tag collections work. You probably know them already (or have figured them out if you’ve been tagging for a while).

  1. Don’t tag with data already available

    Unless your system has no other means of searching metadata, you can always add things like dates, filetypes and even content to your search to find specific files within a tag group.

  2. Use lowercase tags. Always

    It gets messy if you’re inconsistent, and autocomplete will almost always substitute the first capital letter it comes across in a completion, resulting in your previously unused tag now being capitalized.

  3. Don’t use “flagged” or other time sensitive tags

    This one needs some explanation. Unless you are religious about removing “tickler” tags as you go, find another way to denote importance of the tagged element. Finder labels work well for files, and you can keep a “Current” folder with things that need to be attended to. Once you’ve handled whatever needs to be handled, you file it (or send it to a script that will).

    I know this from experience. I tend to be pretty good at reviewing my systems, but the “flagged” and “important” tags got out of hand quickly. Pretty soon I was looking back at flagged files, emails, photos and bookmarks and I really had no idea why they were important anymore.

    In a best-case scenario, you’re using a project/task management solution that allows links. If I need to reply/follow-up on an email later, I drag it into my task manager and create a new task. That gets the flag, the due date, and any notes I need to remember why. I could tag/flag the email as well, but then I’d have to untag it later. This way I just check off the task. Side benefit: assuming you don’t delete completed tasks, you can find it later and follow the link as an easy bookmark.

Consistently

If a tag is used only once, you’re wasting your time. You could have found that file, page, calendar entry, etc. with Spotlight. You didn’t need a tag to do that.

Keep a list of common tags if you need to, at least until they become second-nature. Most of the tagging applications will show you common/recently-used tags when you’re tagging. The best thing in the world can be autocomplete, assuming your tag collection isn’t already a polluted mess. Autocomplete in tag dialogs means you don’t have to struggle to remember casing, plural forms, etc., just go with what you did before.

I generally try to avoid capital letters, hyphenation and plural forms. I’ll use multi-word tags frequently, but without punctuation or intercaps.

Exceptions

There are some obvious exceptions to these rules in my system. For example, I keep a list of things I want using a “tobuy” tag. I have to manually untag these things as I buy them or decide I don’t want them anymore. The tag works really well with Smart Folders in Finder, though, and I don’t have trouble keeping up with it. It’s not an area that changes rapidly; just a folder I can browse when I have some spending money and a shopping urge. On these occasions I just untag “tobuy” items as I go through them. It never gets out of hand and it never takes long to update. Unlike the “important” tag I used to use in all of my projects, “tobuy” is basically a top-level tag that I always search for across all topics and groups.

I also sometimes use questionable tags for scripting purposes. I prefer client→project folders to their redundant tag counterparts, mostly just because I’m going to separate those anyway for the sake of filing sanity. I’ll use client/project tags on files on my Desktop, though, and my scripts will automatically sort those tagged files based on their tags and subtags. It’s a bit of a complex system, but it lets me use my Desktop as a general bucket for everything I’m working on, and have the various elements from multiple projects all neatly filed at the end of the day. The filing tags can be removed by the script after they’ve found their home.

There are plenty more exceptions. I don’t think any two people’s tagging systems will be identical. It’s the beauty of tagging: you can build a system that works for you. It doesn’t have to be rigid, but some general, self-imposed rules can definitely make it a more useful process.


  1. Warning: there is no guarantee that we will always have OpenMeta. OpenMeta uses extended attributes in the UNIX subsystem and it’s not impossible that Apple would pull the plug on OpenMeta’s ability to maintain tags in these xattr’s. However, the current OpenMeta implementation stores tags in two different attributes and keeps a redundant backup of all tags/file associations. It’s a safe bet for now. 

12 Responses to “Some suggestions for better tagging”

  1. Coolspec says:

    Hi Brett

    Thank you for this very informative post. I just want to add my two cents worth. A bit of experience on the subject. I’ll try to be brief. Last summer, I found myself with 1,500 files in “documents” all in folders and subfolders. Even sub folders had sub folders. I decided that a hierarchical sub folder set up was getting too complicated and too cumbersome. Firstly, I cleaned up some old stuff. This is mandatory, first to pare down the volume and then to pursue with the reorganization. Then, I did away with all folders and sub-folders. Next, I got myself a tagging application. I tried Tags but found it heavy on the memory of my system. (After all, Tags is also a Finder) Still I have the app safely tucked in my machine . I got Tagit, free, robust and able to do the job. Ultimately, after cleaning up, I was left with 522 units, which I faithfully tagged. I then set the Finder to put everything in alpha. Last, I got Hazel to identify any untagged files and color any one older than a year. The result: A faster Spotlight, less garbage and a newfound ability to find stuff through Smart Folder.

  2. Brett, This is sage advice. But I’d love to hear an update from you on the situation with iOS apps and OpenMeta. We’ve corresponded about the sandboxing issues, but for me the biggest wrench in the tagging works was the discovery — not widely discussed, but confirmed by the makers of iAnnotate PDF and PDF Expert (and I think this also holds for GoodReader) — that opening a tagged file in an iOS app permanently strips off the OpenMeta data. That’s a deal-breaker for me, since much of what I want tagging for is to be able to use a uniform tagging system for documents and PDFs, but the PDFs go back and forth to my iPad. Am I right about this being a problem? If so, do you see any workarounds? Thanks for all your work. I just love nvALT. What an elegant piece of software that is. Cheers, Joel

  3. […] Some suggestions for better tagging – Brett Terpstra […]

  4. […] by Brett Terpstra’s post, Some suggestions for better tagging, I have found myself tagging everything I […]

  5. […] Some Suggestions for Better Tagging is full of useful ideas. […]

  6. John Johnson jr says:

    Dear Brett, thanks for your as informative as always post.

    I have checked out a lot of the apps using open Meta. I am a user of DevonThink Pro Office which is great, but I am still looking for the right app to tag all the files that are not in a DevonThink data base.

    The whole tagging thing has two major parts – tagging, of course, and how to display the tagged files.

    Tags is the program that without doubt has the most comfortable tagger but it displays the tags in a flat list which soon can be very long. Punakea offers cloud view which I would prefer, but the cloud shows some odd behaviour. Then again, the Punakea data base has to be refreshed manually while Tags has a live view of tags.

    And both apps seem to compete in no-developement. No updates for ages on both of them – last news is: “Dear users, our app is Lion compatible, let’s get back to bed.”

    Bless them Ironic guys for OpenMeta, but Leap is not very handy. A typical geek product, I’d say, great idea under the hood, but no feeling for usability whatsoever.

    Huda Spot – Well, like I said, I already use DevonThink, so I have no need for another app like that.

    Ammonite – a little tool that shows tagged files both in DevonThink and outside of it. But sadly it’s either—or, not both at the same time. And odd behaviour and no developement too.

    So right now I’m only using the free Tagger to get at least tags to my files so one day when there is the perfect app I have some content to display.

    Or do you have a better suggestion?

    • Sounds like we’ve been going around many of the same circles. Update on my earlier post: I’ve recently ended up with the academic reference tool Sente (http://​www​.thirdstreetsoftware​.com), which is really the best tool, I think, for academic geeks looking to tag and manage PDFs. The December 2011 upgrade to 6.5 is sweet, and the integration with the companion app for iPad is terrific; it syncs very nicely, so all the tags (QuickTags) introduced in Sente are retained across the “sandbox barrier” and are searchable in Spotlight, etc. Joel

  7. […] Some Suggestions for Better Tagging is full of useful ideas. […]

  8. […] Some Suggestions for Better Tagging is full of useful ideas. […]

  9. […] an oddball when it comes to tags. I do not tag files other than my Simplenote documents.2 Brett Terpstra has an impressive system of tagging that I occasionally envy, but I stopped tagging the first time […]

  10. […] – and corrections for compatibility with Firefox 11 and Mathematica. Default Folder X’s OpenMeta support has also gotten some love, bringing back autocompletion of tags that you’ve entered […]

  11. […] Some suggestions for better tagging Brett Terpstra passes on some tips to avoid tagging bloat […]

Leave a Reply

Comments may use standard Markdown formatting


Notify me of followup comments via e-mail. You can also subscribe without commenting.

Entries (RSS) and Comments (RSS), or Subscribe by Email