Your smart home can always be made smarter. One popular way to increase its IQ is to use a free automation service such as IFTTT or Stringify. These multipurpose tools can link all of your smart-home systems—from lighting to thermostats to appliances to smart speakers and more—in ways that the device manufacturers might never have considered.

Imagine the lights in your bedroom turning on a very low level and growing brighter as the sun rises, while the day’s weather forecast is delivered to your smartphone and your smart speaker begins reading the day’s news bulletins and you’ll have an idea of the possibilities. The companies that designed each of those products and services likely never thought of their products working together in a such a fashion, but that doesn’t mean they can’t.

So which service is best for connecting all your connected devices? We decided to settle the question using an Amazon Echo, a Ring Video Doorbell, an Arlo Pro home security camera and a set of Philips Hue lights in a few common smart-home scenarios.

Connecting all the things

Both IFTTT and Stringify connect multiple services and devices in an automated process, but they differ in just how they get you from point A to point B, or even point A to point C to point D.

Michael Ansaldo / IDG

IFTTT’s supports many more products and services than Stringify currently does.

IFTTT (the acronym stands for If This Then That) uses applets, until recently known as “recipes.” The difference between an applet and a recipe is more than a name. Recipes automated simple trigger-action processes by monitoring a single channel for an event: an incoming email in your Gmail account that has an attachment, for example. When that condition was met, IFTTT would perform a single task, such as saving the attachment to Google Drive.

Applets still do this, but they have the added ability to make a single trigger produce multiple actions—if this, then that and that and that. The rub is this new capability is currently available only to product manufacturers, service providers, and an advanced class of users it calls Makers. So for the time being, if you don’t fall into one of these buckets, you’re limited to IFTTT’s original functionality, though as we’ll see you can work around this restriction.

Michael Ansaldo / IDG

Stringify’s app is easy to navigate, but there’s a learning curve to creating flows.

Stringify calls its automated processes “flows.” Flows also watch an account or device, called a “thing,” to perform a desired action when specific conditions are met. But Stringify allows for much more complex processes than IFTTT. A single flow can trigger multiple actions.

For example, you could create a flow that tells the Philips Hue lights in your living room to turn on when your Neatmo security camera detects motion, and then turn the lights off after 10 minutes has elapsed. Flows can also include one or more conditions: so you could add a stipulation that the Flow above runs only at night when, say between 10:30 p.m and 6 a.m.

IFTTT and Stringify both allow you to create shortcuts to your applets and flows, respectively. IFTTT uses button widgets (formerly DO Recipes); these add widgets for your Applets to the home screen of your iOS or Android device, so you can trigger them with one tap. Stringify uses colored buttons to trigger your flows in much the same way. The biggest difference is how much bang you get for your button, with Stringify giving you more thanks to the flow’s multi-action capability.

Getting started

Of the two services, IFTTT is the easier to get started with. You can create an account and start exploring applets immediately on the IFTTT web portal or its iOS or Android app.

Michael Ansaldo / IDG

IFTTT prompts you through applet creation with straighforward steps.

Before you can start using these applets or creating your own, though, you must first connect your devices to IFTTT. I found the easiest way to do this is to go to the search tab where all compatible products and services are laid out as tiles and categorized by type (appliances, business tools, etc.). When you select a product, you’re taken to a page with all the available applets for it and a big “connect” button at the top. Clicking that connect button takes you to the product website where you log in to your account and grant IFTTT permission to connect with it.

IFTTT walks you through applet creation in six clear steps:

Choose a service

Choose a trigger

Choose an action service

Choose action

Complete action fields

Review and finish

Stringify is a little trickier. Its website is still in beta, so you can get lots of information about Stringify there, but all the heavy lifting of adding things and creating flows must be done on the Android or iOS app.

Michael Ansaldo / IDG

Stringify can connect a single trigger with multiple actions.

I used the latter, and after I logged in my home screen was displayed with a single Control Shortcut, an option to view some video tutorials, and three tabs across the bottom: Things, Flows, and Discover. The last of these displays prefabricated flows in categories such as Smart Home Basics, Gaming, and Shop.

As with IFTTT, the first thing you must do is add your devices and services. You do this in the iOS app from the Things tab. After selecting “new,” you choose a product or service from an alphabetical list. As with IFTTT, you’re taken to that product’s website to log in to our account and authorize Stringify to access it. As you add devices, they’re added to the Things tab.

To create a flow, you open the Flows tab where you’ll see two columns of empty circles. After naming your flow, you add things by tapping a plus sign at the bottom. You drag the thing that will initiate your flow trigger to a circle in the left column, and then drag the thing that will initiate the action to the circle directly to the right of it. Tapping on each thing opens a window where you choose the actual trigger or reaction.

If you want to your Flow to have multiple actions, you drag each successive thing to a circle under the previous one in the action column. When you link the trigger to the first action, you’ll see a line bound by the Stringify logo between the two to show they’ve been successfully connected. You then drag that line to any subsequent actions to link them.

Head to head

The first test was a simple A-to-B process. My family likes to to turn a specific living room lamp off when we watch movies to eliminate glare on the TV. So for both IFTTT and Stringify, I created a process wherein I could have the Echo turn off the Philips Hue lights by telling Alexa to trigger “movie mode.”

Each service uses slightly different language to command Alexa: For IFTTT, you say “Alexa trigger” followed by the name of the applet, in this case Movie Mode. Stringify uses the trigger “Alexa, tell Stringify” followed by three trigger words of your choosing. “Run movie mode” in this example.

Michael Ansaldo / IDG

The “movie mode” applet I created allowed me to tell Alexa to turn of a lamp to prevent glare on the TV.

Not surprisingly, this simple task was a slam dunk for both services with each executing it flawlessly 100 percent of the time.

Next I created an applet and a flow that would turn on the living room lights whenever the Ring Doorbell detected motion outside my front door. During both staged tests and real-world visits, both services performed perfectly again.

Michael Ansaldo / IDG

You can turn IFTTT applets on and off as you wish.

I decided to increase the complexity by tweaking this last process and adding another product to the chain. There was a home invasion in my neighborhood recently, so I wanted to create a process that would turn on the lights and tell the Arlo camera to record two minutes of video whenever someone rang the Ring. This was easy enough to do in a single Stringify flow. But I had to create two separate IFTTT applets: one telling the Hue lights to turn on when someone rang the doorbell, and another to the Arlo to start recording when someone rang the doorbell. Regardless of the separate commands, IFTTT pulled this off as consistently as Stringify.

Finally, I wanted to test Stringify’s conditional capabilities. I created a flow that would turn on my downstairs lights whenever the Ring detected motion between the hours of 10 p.m. and 6 a.m to ward off anyone lurking about outside after bedtime. This required me to use two triggers, one device-based and one time-based. I ran it for several nights in a row and sure enough, it lit up my living room whenever my night-owl neighbor passed by my front door.

Michael Ansaldo / IDG

Stringify offers many pre-fabircated flows categorized by type.

Which is best?

As far as getting the job done in our tests is concerned, IFTTT and Stringify were evenly matched. But that doesn’t mean they’re equally good choices for connecting your smart home devices. IFTTT works with far more products and services than Stringify and is exceedingly simple to use, but true to its name it’s still limited to basic two-step tasks. Yes, you can replicate some of Stringify’s multi-action functionality by running concurrent applets, but that gets tiresome quickly, particularly when you have to create separate shortcuts for each one.

Stringify, on the other hand, makes it easy to create automations that are as complex as you can imagine. That alone makes it seem like the better solution given the growing selection of smart products we’re taking into our homes. The app’s non-intuitiveness--and the absence of a browser-based app--however, are hurdles. The service’s narrow selection of supported products also limits its appeal in the short term.

In the meantime, we recommend trying them both out and seeing which seems best suited for your devices. You might even find yourself switching back and forth as you swap out old devices for new ones or using them together for different devices. And yes, you can use one to trigger the other. Ultimately, with two great automated services like these to choose from, the real winner is you.

To comment on this article and other TechHive content, visit our Facebook page or our Twitter feed.