Self-Service Flow Steps: Marketo’s Game-Changing Feature Has Untapped Potential
Overview
Here’s the thing. If your top priority now is looking for a way to acquire more leads, then probably it’s not the time for lead scoring. Not yet, anyway. That’s because lead scoring is about improving the quality of your leads, not generating more. If anything, it reduces the number of potential leads, so that your sales team can focus their efforts on those people who have better chances of converting to an opportunity, or even better, converting to a buying client
In Marketo smart campaigns are where all of the action happens. If you are a Marketo user, you are probably familiar with this list of flow actions. And if you’ve used Marketo for a while you’re probably also aware that this list hasn’t changed much over the years. Sure, it has most, if not all of the core features you could want as a Marketer. But as Marketers we are always pushing the limits and often times there are advanced or custom features you really wish it had that just aren’t there. If this hasn’t happened to you yet, I promise you it will! Fortunately for us this is where Self-Service Flow Steps come in. Self-service flow steps allow us to expand our list of flow actions, adding custom actions beyond the typical pre-defined ones. This means that virtually any action you need – from validating emails and updating e-commerce orders to sending WhatsApp messages or even utilizing AI, can now be incorporated into your smart campaigns. In my view, Self-Service Flow Steps are not an alternative to webhooks, but rather an evolution. While they both allow us to connect Marketo to outside services, passing data out, and return data back, these new flow steps solve 5 major limitations webhooks have had since their inception. 🟥 Webhooks only have one flow action which they all share – “Call Webhook” and the only option you have within this action is to select which webhook you want to call. This means there is no variability between one campaign and the next. For example, we have built a process that allows us to set registration limits for programs. When called, it checks the set limit and number of people currently registered, then either registers the user, or waitlists them. However, with webhooks that limit can’t be set on the flow step, it has to be static or set as a program token which is a bad user experience and ripe for user error. ✅ Self-Service Flow Steps in contrast, allow customizable flow step fields which can be set in each smart campaign providing a much improved user experience, cutting down on uncertainty and errors. This alone expands the possibilities well beyond what webhooks are capable of, as each flow step can be highly customized at the flow level. Notably, these fields also include dynamic dropdowns which get their options from a backend service. For example, when we launched our OpenAI Flow Step it only had support for the gpt-3.5-turbo model, but when the gpt-4 model was released, we were able to automatically make it an option for everyone with the flow step installed. 🟥 Webhooks require the configuration of URL parameters and manually written JSON, which can be cumbersome and technical. ✅ Self-Service Flow Steps, simplify the process by offering packaged solutions where fields can be pre-mapped and offer a graphical interface for making adjustments. This makes the entire setup more straightforward, which lets us empower our Marketo users without burdening them with any intricate configurations. 🟥 Webhooks can’t be called in batch campaigns, and while there are ways around this, it can cause problems and data loss. This significantly limits the possibilities when using webhooks, as well as efficiency and scalability. For example, while you could use a service like ClearBit as a webhook in a trigger campaign to enrich leads as they enter the system, you couldn’t use that webhook to enrich all of the leads you already have in your database. ✅ Self-Service Flow Steps are supported in batch campaigns. Allowing for more efficient processing of larger tasks. The data is sent to the service in batches of up to 1000 records, which gives us many more options for how we can use them and makes it far more efficient from the backend as well. 🟥 Webhooks depend on server responsiveness. 30 seconds is all we have. If the server is delayed or overwhelmed the connection will close, and there’s a risk of data loss. This limits what we can do and what data we can get return. For example, if you are asking an AI model to generate complex content, the process could easily exceed this limit. From the Marketo webhooks documentation ✅ Self-Service Flow Steps operate asynchronously. Data is sent to the backend service in batches along with a callback URL, like a return address. The service can then send back the response whenever it’s ready whether it takes 5 seconds or 5 days. This means they’re not reliant on a continuous server connection, greatly expanding what solutions are possible as well as reliability. 🟥 Webhooks, are limited to tokens when sending data on the outbound side, which can constrain solutions. On the inbound side, webhooks are limited to lead field changes, which means we while we can update lead data, we can’t see in the activity log anything else about the process. ✅ Self-Service Flow Steps support both standard and custom context data on the outbound side. This includes lead data, program, smart campaign, program member and subscription context data, offering a broader data scope for operations. On the inbound side, we are of course able to pass back lead data, that will update lead fields, but we are also able to pass activity data, which will show up in the lead activity log. This activity data can also be used for filtering and triggering in smart campaigns giving better targeting options. For example, with our ZeroBounce Flow Step we receive a lot of data back about the user’s email provider including items which we may want to use to trigger but not save on the lead record. In some specific scenarios, a webhook might still be the go-to choice. These scenarios include simple setups with few variables, actions that don’t need data responses, or those that can generate a quick reply. It’s also important to note that there are some current limitations / quirks with self-service flow steps. For instance, they don’t support tokens inside the flow step fields or program tokens. And, they always require at least one flow step field. The introduction of Marketo’s Self-Service Flow Steps is more than just a feature—it’s a breakthrough for smart campaigns. For us it has been an invitation to think bigger, to revisit old challenges, and reimagine what is possible. The new reality is, we can now add to our smart campaign, basically any action we can think of. Sure, there are some technical hurdles to getting set up but the potential is endless. I would love to hear people’s opinions on this topic. Are you using Self-Service Flow Steps? What have you built / what would you build? Up next in this blog series will be:First, what are Self-Service Flow Steps?
How are they different from Webhooks?
1. Customization
2. Ease of use
3. Batch operations
4 Reliability
5. Data
Webhooks vs Self Service Flow Steps
Self-Service Flow Steps are not always the best choice
Conclusion
References
SIGN UP FOR OUR NEWSLETTER
Josh Arrington
Maketo Champion & CMTO
Marketing technology consultant & full stack developer specializing in marketing automation, strategy and highly effective campaign execution. Recently named Marketo Champion by Adobe. Over 18 years of experience working with companies to identify the right mix of marketing technologies and putting them to work with profitable purpose.