# Goodbye IFTTT


I was a power user of [IFTTT](https://ifttt.com/) for many years, so I had mixed
feelings recently about [their decision](https://archive.is/zpx2r) to change
their pricing model. Under IFTTT's new pricing, you can only have 3 "custom"
actions created/enabled at any time -- which is quite a downgrade from the
current unlimited free plan. On the one hand, I'm glad to see IFTTT take
necessary steps to ensure it has long-term financial stability, but on the other
hand, I don't personally get enough value from their service anymore to justify
a recurring cost. (The plan will likely be
$4/month[^1], but if you sign up before a deadline, you
can lock in a price as low as $2/month)

IFTTT was an awesome and uniquely easy-to-use service when it first came out,
but now there are better options for personal automation for people like me, who
like to tinker with this sort of thing. Systems like
[node-red](https://nodered.org) and iOS shortcuts can be self hosted or run on
device, and they provide more sophisticated logic for workflows than IFTTT.

I stayed on IFTTT this long mostly due to inertia, and it's fantastically long
list of supported services. If I needed to throw together a quick
spreadsheet-recording automation, or cron-like trigger, IFTTT was a great
starting place. However, it does have limitations. Until now (though it seems
like this might change with their premium offering), IFTTT basically only did
what its name implied: "if this, then that". No "if X then Y else Z", no "if X
and Z then Y", etc. Often times, you don't need any complicated logic or
filtering, but it was frustrating that there wasn't the option for more advanced
automation. Ultimately, IFTTT had a great "on-ramp", but once you were on board
with their system, you realize how shallow it is. Excellent breadth, mediocre
depth.

Similarly, in the past couple years IFTTT's UI has leaned heavily into the
"applet" metaphor, with these big goofy toggle switches to enable/disable
automations. The site also transitioned towards a focus on community- (or, more
often corporate-) created automations, at the expense of the experience for
creating your own applets. Like seriously, why is 30% of the UI for an applet
_details page_ (!) taken up by the connection status toggle?

![](https://benjamincongdon.me/blog/2020/10/30/Goodbye-IFTTT/ifttt.png)

The settings page, too, is woefully information sparse. As a user, this makes me
feel that desktop-usability was not high on IFTTT's design priorities. You have
to scroll the page to begin to start to see what the automation is doing:

![](https://benjamincongdon.me/blog/2020/10/30/Goodbye-IFTTT/ifttt-settings.png)

Eventually, the UI got to the point where it felt like using
[Duplos](https://en.wikipedia.org/wiki/Lego_Duplo) or something. It didn't have
to be this way! There are great low-to-no-code tools that have much more usable
interfaces, like
[Scratch](<https://en.wikipedia.org/wiki/Scratch_(programming_language)>).

![](https://benjamincongdon.me/blog/2020/10/30/Goodbye-IFTTT/scratch.png)

So, I decided to migrate away, since the move to premium was already going to
substantially limit what I could do with IFTTT. In going through my catalog of
IFTTT "applets", I identified 3 main patterns of automations that I used IFTTT
for: (1) triggering an action to happen at a specific time, (2) triggering an
action to happen in response to a location change (i.e. geofencing), or (3)
triggering an action to happen in response to an event in a web service.

Of these 3 buckets, iOS shortcuts readily handles the first 2: as of iOS 14,
Shortcuts can be triggered in the background at a specific time of day, or in
response to entering/leaving a geofence. Shortcuts also has a much more
sophisticated integration with iOS than any of IFTTT's apps, so more exciting
mobile automation becomes possible -- for example, setting my phone to Low Power
Mode once the battery drops below a certain threshold. Of course, you are
restricted to apps/services that support Shortcuts, and the number of supported
services is considerably smaller than IFTTT.

Node-red handles buckets 1 and 3: it has good support for time-based actions,
and can receive webhooks to respond to events from external services. It also
has a great plugin ecosystem, so it's support begins to rival IFTTT's impressive
selection of supported services. Additionally, node-red has many "escape
hatches" that IFTTT does not: you can use it to make raw HTTP requests and write
your own plugins/logic in Javascript, allowing for much more complex automation.

Neither node-red nor iOS shortcuts are as easy to use as IFTTT for putting
together a simple automation, which is a shame. However, between them (and other
alternative automation frameworks that I've trialed, like [n8n](https://n8n.io/)
and [huginn](https://github.com/huginn/huginn)), I've more than covered my
personal automation needs.

And so, goodbye IFTTT! 👋 I'm not put off by them charging for their service; I
think charging for software is a good thing! It's just that this was the nudge I
needed to move my automations to infrastructure that I have more control over,
which has other benefits outside the scope of this article. I'm thankful that a
service like IFTTT continues to exist; I still think it's a fantastic tool to
"on-ramp" less technical folks into automation and no-code tools.

_Cover art:
[The Village Of Murnau (1908)](https://artvee.com/dl/the-village-of-murnau/)_

[^1]:
    A previous version of this article stated that the price for IFTTT Pro was
    $10/month. While the original press release, as covered [here](https://www.theverge.com/2020/9/10/21430265/ifttt-pro-subscriptions-free-controversy) indicated a $10/month
    price, and the current suggested price for IFTTT Pro on their signup form is
    $10/month, it seems like going forward the Pro price will be $4/month. I
    apologize for the inaccuracy.

