Home / ES to CX migration / Why all Dialogflow ES developers should build at least one CX bot
ES to CX migration

Why all Dialogflow ES developers should build at least one CX bot

Check out my courses Learn Dialogflow ES and Learn Dialogflow CX if you would like to learn Dialogflow in depth. 

This is the sixth part in the series on Migrating your ES bot to Dialogflow CX.

I think everyone who is building Dialogflow ES chatbots should build at least a very simple chatbot using Dialogflow CX as they are learning ES.

Why learning CX will make it easier to build ES bots

In my view, you will be able to build better ES bots if you learn CX also.

Here are three reasons why:

Candidate Intents

I have discussed how you can use candidate intents to manage state in Dialogflow ES.

Dialogflow CX provides a state-machine based approach to building chatbots. And once you build the simple vending machine bot in CX, you can also see the reason why candidate intents matter in ES. In turn, this will help you build better ES bots.

Slot filling

In Dialogflow ES, slot filling is a big mess. On the other hand, Dialogflow CX addresses all the major limitations of slot filling which you see in ES.

By using slot filling in CX, you will be able to understand how ES slot filling is different, and also understand why you should avoid it.


When the conversation goes off track, it is quite hard to handle it in Dialogflow ES.

I recommend that people use a very short output context lifespan so they can more easily understand and diagnose the behavior of their Dialogflow ES bot (because you can reduce the number of candidate intents at each step). However, it comes with a tradeoff. The shorter the lifespan, the harder it is when the conversation goes off track.

By using a state machine based approach to designing conversations, CX avoids this problem. When the user says something the bot doesn’t understand, the bot just remains in the same state. If the user sends a different message (which is easier for the bot to understand), it will move to the next logical step in the conversation. Simulating this behavior in Dialogflow ES is much more complicated.

Why choose ES?

You might wonder why someone should choose ES if CX is so much better. There are a few reasons:

  • ES is quite inexpensive, with a very generous free tier
  • ES is somewhat easier to learn
  • ES bots are usually easier to maintain
  • As of this writing, ES has more integrations and more tools

Migrating ES to CX

But once you have used your ES bot for a while, you will probably want to migrate to CX at some point. Because as your use case gets more complex, and as more users interact with your bot, you will realize that some things are much easier to do in CX.

And if you already know how CX works (even at a very basic level), your eventual migration will be much easier.

This website contains affiliate links. See the disclosure page for more details. 
"The magic key I needed as a non-programmer"

The custom payload generator was the magic key I needed (as a non-programmer) to build a good demo with rich responses in DialogFlow Messenger. I've only used it for 30 minutes and am thrilled. I've spent hours trying to figure out some of the intricacies of DialogFlow on my own. Over and over, I kept coming back to Aravind's tutorials available on-line. I trust the other functionalities I learn to use in the app will save me additional time and heartburn.

- Kathleen R
Cofounder, gathrHealth

Similar Posts