Contact managers and CRM systems are incredibly stupid

I'm having a crisis of faith. I can't stand contact managers. Whether you call them CRM systems or contact managers, they all seem to be stuck in the land time forgot.
Written by David Gewirtz, Senior Contributing Editor

I'm having a crisis of faith. I can't stand contact managers. Whether you call them CRM systems or contact managers, they all seem to be stuck in the land time forgot. They're incredibly inefficient, and no matter how hard I try to force myself to use them, I find I get busy and never bother to update my contacts.

When you have a piece of software designed to make you more productive, and you find you're not using it when at your busiest, that's a sign the software isn't doing its job.

I have a long and sordid history with contact managers and CRM systems, going back way before the Internet. As a small business owner, I've had to make sales calls, cold calls, and manage a sales force.

Today, I don't manage a sales team and I rarely make outbound sales calls. But I do have to coordinate a mind-boggling array of contacts, ranging from government officials to members of the press to PR people to vendor people to readers to authors to my clients, to my clients' clients, and on and on and on.

Keeping track of all these people is non-trivial.

First, let me cover the whole CRM thing. I've used CRM systems and I even coded my own CRM system (in FileMaker) that my company used sometime in the 1990s. I've used ACT!, GoldMine, SugarCRM, Zoho CRM, as well as basic contact managers ranging from the Palm Desktop to Outlook. I haven't used Salesforce, oddly enough because they tried to sell me too hard (and that ticked me off).

CRM systems are important when managing a team of sales people, but for individuals, they can be overkill. Even so, even for managing a team of sales people, today's CRM systems are still trapped in the dark ages.

Every CRM system known to man organizes things based on accounts, contacts, leads, etc. An account is essentially a company and a contact is a person at the company. You can see all the people at the company by looking the account table for that company.

Doesn't that seem so last century?

Today, we all know about the social graph when it comes to individuals, but there's also something of a social graph (or relationship graph) when it comes to business.

Here's a current example. I'm working with Adobe on a DIY-IT project to generate Kindle books. I need to keep track of the people who are Adobe employees, but I also need to keep track of the people who are working the Adobe account from Adobe's PR firm. I also need to keep track of the outside experts Adobe pointed me to, who aren't employed by Adobe but are part of this project.

The accounts and contacts paradigm fails completely with this relationship graph. I need to be able to assign a diverse group of people to a project or interest. Yes, there are categories, but it gets old when you have a set of categories for "PR people" and a set of categories for "prospective clients" and another set of categories for each project, like "Adobe Kindle project".

Something more holistic is needed.

Next up, there's the whole data entry problem. When I add a new to-do item to Toodledo, it takes 10-30 seconds. When I add a new appointment to Google Calendar, it takes 10-30 seconds. When I add a new contact to either Zoho CRM (my current CRM system) or Outlook (my mail client), it takes 3-5 minutes. That's because you have to fill in all the fields, decide where everyone fits, categorize them, make sure there aren't any dupes, and yada-yada-yada.

So, you know what I do? I just rely on the signature at the bottom of email, don't add people to the CRM system or Outlook contacts, and just search my email every time I need to make a call or look someone up. I've also started to use LinkedIn, typing in the person's name with the hope that his or her contact information is easily accessible.

These crude techniques work surprisingly well, but they don't let me add metadata to an individual. For example, if someone gives me their cell phone number, that might not be on their email sig, and I might then have to create a contact (somewhere) for it. Or, you know, just forget.

What I want, honestly, is to just email a message to an address and have it automagically be entered into a database. Or just select some text and have that text automatically parsed, folded, and spindled, and sent to the appropriate record (with all the appropriate relationship information). I used to use a tool called eGrabber that kind of did this, but it was one more piece of software to add to my PC, and I stopped using it after a while. I also tried Xobni, which aggregates email contact information, but it was bloated and it, too, didn't actually create clean contact records.

So, I rely on email searches to find contact information. There's no structure because my time is more valuable to me than creating structure.

CRM systems also suffer from to-do-itis. They often have their own to-do items, which exist so you remember you're supposed to call Paul back next week, because he expressed an interest in buying your widget. But, if you're like me, you also have a to-do manager on your phone, in Outlook, in Google Calendar, and -- if you're like me and have a boatload of to-dos -- you might have a dedicated to-do management tool like Toodledo.

With CRM, do you now need to check multiple to-dos? Sales to-dos are in the CRM system, while others are in the other systems. Sheesh. Plus, there's always that newbie CRM-user tendency to schedule every raw lead as a to-do to make sure she knows who to try cold-calling. Within a week, there are so many to-dos that they're subsequently ignored in perpetuity.

And then there's sharing. CRM systems have multi-user versions, but none of them share as elegantly as Google Calendar does. I can choose to share a category in Google Calendar with people entirely outside my organization, and they can choose to share with me. The sharing in Google Calendar is, essentially, a web of calendar shares, and would be perfect for contacts or CRM systems.

For example, I don't necessarily want my Adobe contacts to see the contacts at the other projects I'm working on, but I'd sure like to be able to let that small project cluster have a shared pool of contact information within that cluster. That way Jane can see that I already know Joan, but she can go ahead and add Andy, who I haven't met yet.

Why don't we have simple interchange formats for these things? Yes, I know there are a ton of standards, but there's nothing that's truly universal, truly simple, truly open, truly secure, and can function at the application API and web service level. Yes, we have the vCard format, but almost no one ever uses it. So, there's a fail.

I know, in our increasingly appliance-centric model of computing, that bolting modules together seems far too complex. But when it comes to activities as fundamentally important to business as calendar, to-do, and contact management, we need interop between the components. We need simple bolt-together options. And, for all the tea in China, Salesforce needs to stop calling and calling and calling... and calling and calling, just because you asked one question of them.

If I were to prioritize, I'd say the single biggest thing contact manager providers could do to make me more productive is to remove the field entry requirement for contacts. Take an email message or a block of text, parse everything out, and do the work for me. Figure out what's a phone number, what's an email address, and so on, put that information in fields, and save me 3-5 minutes work per contact.

Make contact management happen automatically, seamlessly, effortlessly, and use all the information at our disposal. Use (if I give permission) all the information I maintain in my LinkedIn network, the information in my Sent Items folder, the information in my Facebook friends list, the information you can find by simple Google searches, and parse it all for me.

Look at it this way. Contact parsing is a far simpler computer science problem than natural language, and Siri seems to be doing a fairly adequate job of handling natural language. If we can make natural language systems that work as well as the one Apple built when I press the microphone button next the the keyboard on my iPhone 4S, we can certainly build something that can parse and categorize contact information.

Go forth. Build. All you smart folks out there want to do that next online start-up. Make me a good contact management solution. If you do, and if it really works, I promise to tell everyone all about it.

Go. Code. Now.

See also ZDNet's Social CRM: CRM Watchlist 2012 - The Winners List

Update; Read the comments below. In most cases, they reinforce everything that's wrong with the CRM mindset. One guy suggested I use his favorite CRM program, because it has its own email client. I don't want to switch email clients. I have 20GB of history in my Exchange store and there's no reason. Two people recommend "elbow grease," as if it's a virtue to waste time doing clerical work that can better be done by smart programming.

Others suggested I change my mind approach to fit the CRM program. And still others recommend one of their favorite fields because that'll organize everything. No. No-no-no. Until there's something that's faster and more natural than searching old email messages, the problem isn't solved. You can't make the case that CRM or contact management is useful when the vote is for "elbow grease".

I know CRM is big business, but it's an obsolete dinosaur. Until the old thinking changes, it's still crap.

Editorial standards