Twitter Engagement, Part 4: Engaging Meaningfully and Efficiently

This guest post comes from Adam Green, a Twitter API consultant and author. Adam blogs about Twitter programming at and tweets from @140dev. His latest book, Twitter API Engagement Programming, is available on Amazon in paperback and Kindle editions. This is the final installment in this four-part series. Part 1, Part 2 and Part 3 are also available.

Sustaining an effective engagement campaign can take a surprising amount of work. You could limit yourself to following the leads from the data you collect, but following without interacting first will get you a very low follow-back ratio. More importantly, if you follow and then forget people, they may follow back, but they’ll soon forget you. A high number of followers who don’t reply to, mention or retweet your account are of no value. True engagement is long-term and repetitive.

Here are some ideas for automating this process to reduce the effort needed, along with links to example Source Code. I want to make it clear that automation can be a useful part of engagement, but you have to personally interact as well.

1. Auto-tweeting. Automated tweeting has a bad reputation because of its use to create spam tweets, but using automation to send at least 8-10 tweets of various types per day is an effective way to keep your timeline active. You should also add hand-written tweets throughout the day when you have time. This model makes sure that even when you have to be offline for a day or more, your account won’t go dark.

While there are some limits on automating tweets, in general you can safely use scripts to send tweets on an automated schedule. The key is to not be abusive. For example, capturing multiple RSS feeds and tweeting hundreds of blog posts a day may get you suspended for spam, but using high-quality feeds to generate a couple of tweets a day is acceptable. You’ll find other auto-tweeting ideas in the source code example.

2. Auto-retweeting. Automating retweets is an effective way of showing you’re up on the most active buzz, and it also flatters the users who are retweeted. The key is to make sure your code doesn’t accidentally choose an embarrassing or lame tweet. Blindly retweeting every tweet from another account is spammy and against the rules.

I find an effective approach is to collect all the tweets from a couple of high-quality and influential accounts, and have code that watches for one of these tweets to get at least 3-5 retweets. Retweeting a few  popular tweets a day makes sure your account is a part of the daily conversation. Again, manually generated retweets should also be sent as you have time.

3. Viewing tweet conversations. Twitter recently added a weak attempt at displaying conversations in timelines, but there is still no way to show all the past tweets where you and another user have exchanged @mentions and retweets. Unless you have an amazing memory, you will lose track of past interactions. It’s pretty embarrassing to repeat past questions, or lose track of crucial facts you should know. You may not need a complete CRM set of functions, but this script can be really useful to review past conversations. It becomes essential when multiple people manage the same account, which is common in business.

4. Searching Direct Messages. I’m one of those people who like to transact business via email, because it gives me a permanent, searchable archive. That’s why Gmail was brilliant in offering essentially unlimited storage. Direct messages should take over part of that role, but Twitter doesn’t provide a way of searching past DMs. This source code makes that possible.

5. Viewing DM conversations. What I just said for tweet conversations is even more important with direct messages. All DMs are a one-to-one conversations, so the ability to retrieve all past DMs between your account and another is an essential element of relationship building. does show past DMs, but they have an undocumented limit, and no way to scroll far back in time.

Be sure to read the next API article: Salesforce1: An API Story that Could Revolutionize the King of Cloud