Choose the right tool
Start with the work you need done. Writing a campaign, finding a customer's latest order and adapting an email are different jobs. Here is where each belongs.
Match the tool to the job
| You want to… | Use | What you get |
|---|---|---|
| Build or change a campaign from a brief | maxinja | Saved audiences, content and workflow configuration that you can open and review. |
| Reuse a customer fact from related records | Evaluated attributes | A saved definition, such as this customer's latest completed order, evaluated when requested. |
| Check current records at a particular point in a journey | Query | A lookup result the following steps can use. |
| Interpret customer context or make a recommendation during a journey | AI step | A model-generated answer with a defined output shape. |
| Adapt a passage in each recipient's email | Adaptyle | Generated wording inside the template you designed. |
| Insert an exact value or show content by a rule | Liquid | A name, order number, price or conditional passage based on supplied data. |
Follow one onboarding journey
Suppose you want signups to create their first project. A teammate creating a project should not count as the signup's own progress.
- Brief maxinja. Ask it to build a signup journey with a two-day wait and a first-project email. Keep the journey unpublished while you review it.
- Define the customer fact. An evaluated attribute can count projects owned by that person. Review the ownership match against the actual user and project records.
- Check after the wait. A Query step can read the person's current projects. Branch on the result so someone who already started leaves before the reminder.
- Adapt the message. In the email, Adaptyle uses the person's goal and selected project context to suggest a first project. The button and destination stay authored in the template.
The Query result answers whether to send. Adaptyle answers what the marked passage should say. You do not need an AI step just to count projects or personalize that passage.
Follow the onboarding walkthrough to build and inspect this journey.
When an AI step earns its place
Use an AI step when its answer needs to affect the journey beyond one email. For example, interpret a customer's free-text onboarding goal and return a recommended onboarding path. A later branch can choose the path, and an email can use the same answer.
Provide the evidence, define the expected fields, and test how the next step handles an empty or unusable answer. For a fixed rule such as “project count is zero,” use saved logic instead of asking a model to decide on every run. Workflow AI explains the execution modes and costs.
The AI answer belongs to the run. Save it with Create or Update Records if another campaign needs it on the customer's profile. Include any required writing guidance in the AI prompt or selected data; the later email's brand kit does not automatically rewrite a Liquid-inserted answer. A terminal generation failure stops the run, so a generic answer requested for missing data is not a recovery path for a failed model call.
Choose how a value stays current
An evaluated attribute runs its saved data logic when requested. It does not ask a model to invent a new value each time. A computed attribute publishes a background calculation from event history on its configured refresh schedule. Check its Data through timestamp before treating it as current.
A Query step reads at its position in the journey. Data collected before a wait does not automatically become a fresh lookup afterward. Published calculation snapshots can also remain fixed for an active run. See data expansion for those boundaries.
Start with the smallest useful build
For a personal campaign, start with one email, the fields it needs and three recipient previews. Add a journey when timing or follow-up matters. Add an AI step when its judgment changes what the journey does.