A Different Way to Automate Tweets: Add a Person in the Loop

  • 3 November 2021
  • 6 replies
A Different Way to Automate Tweets: Add a Person in the Loop
Userlevel 7
Badge +11

What’s up, you awesome automators! I’ve got a fun one for ya today, and I’ve included an Airtable base you can copy and a Shared Zap you can use as a starting point.

NOTE: If you’re in a hurry and think you can figure it out with the Zap and Airtable base, click those links above and skip the article (but then come back to it, to see if you maybe you missed anything).

The Challenge: Semi-Automate Tweets

There are plenty of tools out there that enable you to schedule tweets and auto-post them (Hootsuite, Buffer, Zapier, etc) and that’s all fine and good...sometimes. Maybe you want the tweet to look like you posted it personally, to give the impression that you just crafted it. 

I don’t have the data on hand to demonstrate that there are advantages to manually posting on Twitter, but I imagine if everything you post has been scheduled in advance, your fans will start to see you as hands-off and Twitter may consider you less engaged since you don’t actually use their platform.

TIP: You can schedule tweets directly in Twitter as well, and in some cases that might be work totally fine for your use case. 

The Solution: Add a Person in the Loop

We can automate some parts of the process, then throw a person into the loop when it comes time to send the tweet. What does that look like?

Create the Tweets Ahead of Time

In this example I’ll be using Airtable, for several reasons:

  • You can use various views (grid, calendar, kanban, gallery, etc), which can be helpful when planning a social calendar.
  • There are lots of built-in functions that we can use to make our Zap more efficient.
  • Airtable formulas can help us keep track of whether our tweets exceed the character limit.
  • Airtable has its own automations, which can prove helpful for Airtable-only things :)

In Airtable (here’s a shared base you can copy)

click to enlarge

I’ve created the following fields to help me build my tweets. Notice that there is a field that counts the characters of body text + hashtags + URL, and then another one that displays a green check or red X.

Outside of the fields you can see above I’m using some formulas to help reduce the number of steps in our Zap (trying to save you tasks when I can).

Here I’m encoding the text, hashtags and URL so that I can then create the encoded URL:


This helps us ensure that the link will work when we send ourselves a message.

How It Triggers the Zap (here’s a Shared Zap you can use as a starting point)

I created a view that checks to see if the “Date to Ping” is today and also that the Status is “Ready”. You don’t necessarily need a status but it may be a good idea so you can have more control over what you want to tweet.

Then our Zap triggers on new records in that view.

The Zap does a few things (some of it optional):

Shorten the URL: this one is only necessary if you’re sending a text message, since otherwise you won’t get the entire link. You could also choose something like Gmail, Slack or Pushcut, in which case you won’t need to shorten the URL.

Random Number of Minutes (for delay): because the record will enter the view at the beginning of the day (midnight) I set up the Zap to give me a number of minutes between 600 (10am) and 1260 (9pm). You can modify this or remove it altogether and just click the link whenever you want to...if you remember.

Delay for X Minutes: The Zap will delay for the number of minutes above, making it feel more natural in terms of tweeting. Having a variety of times at which you post will make it seem more random. 

TIP: if there are times of day where you’ve found that your tweets perform better, you could set the minutes above to reflect that. Like if it’s between noon and 4pm you could use 720 and 960 as the range.

Click the Link and Post the Message (from YOU and not from an automation platform)

I can’t say with 100% certainty that this behavior will be the same on an Android device, but in iOS when I tap the URL in my Messages app, it opens the Twitter mobile app instead. That makes it easy to construct the URL but end up posting from the app instead of a mobile web browser :)

Wrapping Up

I hope the instructions and the Shared Zap + copyable Airtable base help you get this up and running. There’s a LOT more we can do with this, but this is a pretty good start!

6 replies

Userlevel 1

It would be great to be able to add an image to the tweet too. :)

I can’t seem to access the shared zap, even after logging in - just shows a blank page.

Userlevel 7
Badge +11

Hey @siliceous,

Thanks for letting us know! I’m really sorry you’re unable to access that shared Zap. When you click the link above, are you able to see the initial page with details of the shared Zap? If so, is it then when you then click the Try this Zap button that it loads a blank page? 

I’ve just tried it from my side and it loaded fine. Perhaps it might be worth trying to load the shared Zap in another web browser to see if it works then?

Hopefully that will help! :)

Userlevel 1

Hi @SamB 

I just tried clicking on the link in your message in the same browser and it worked. Thanks. :)

Userlevel 7
Badge +11

Hi @siliceous! I agree about adding an image, and when I did a search online I came across this article: https://medium.com/@carolynmcneillie/how-to-embed-an-image-in-a-custom-click-to-tweet-link-5d3631eec790.

Unfortunately, that doesn’t appear to work anymore. I’ll play around some more to see if I can figure out a way, because it would definitely be helpful to include an image in there :)

It’s not 100% a solution but just today I’m seeing that Instagram posts will show up as previews in Twitter, after that feature not working for years. And the link has to be in the post itself. Just thought it was funny timing so I thought I would share.

Userlevel 1

Hi @nicksimard 

Using an Instagram link in the Zap is a great idea and a good workaround. Thanks for sharing the tip and links to the articles.


Userlevel 7
Badge +11

@siliceous I found an even better option, because I’m stubborn and refused to accept that this wasn’t possible. The cleanest and most convenient I’ve found so far is Cleanshot (sorry, this one is Mac-only). 

This is what it looks like in a tweet:

You can type in a custom description when uploading to their cloud service. Mind you, in order to properly show up in Twitter’s preview, the dimensions have to be something like 500x260. Otherwise, when you click on it you are at least presented with a clean page with minimal branding in the bottom right corner:

For Windows, you could look into Jumpshare. It doesn’t do the description quite as nicely and you have to upgrade to disable comments on the page that’s linked to (you never know whether someone will think it’s funny to comment there).