Code based experience - Overview
What is it
Code-based experiences allow you to deliver personalized, dynamic content and messaging using custom code — such as JavaScript, APIs, or templating languages — within Adobe Journey Optimizer.
This channel is ideal for building highly tailored, data-driven interactions that extend beyond standard visual authoring tools (WYSIWYG editors), giving developers and optimization managers full flexibility to design custom personalization logic and content layouts.
Examples:
- Customizing email or push notification content based on complex user attributes or behavior.
- Integrating third-party APIs to fetch real-time data and inject it into messages.
- Building advanced decision logic or multi-step campaigns triggered by specific events.
Important: Requires developer skills and testing to ensure correct data handling and delivery.
Use cases
Choose code-based experiences when you need to:
#
Benefit
Why
Example use cases
1
Deep personalization
Enables highly tailored messaging using complex logic and real-time data
- Dynamic product recommendations based on recent browsing
- Personalized discounts calculated from user loyalty status
2
Integrate external systems
Fetch and display external data directly in communications
- Weather-based promotions
- Real-time inventory updates in email
3
Create advanced workflows
Build multi-step, conditional journeys that adapt per user actions
- Abandoned cart follow-ups with timed reminders
- Reactivation campaigns triggered after inactivity thresholds
4
Go beyond platform limits
Add features or messaging formats not supported out-of-the-box
- Custom interactive email elements
- Complex SMS message variations
5
Improve campaign flexibility
Quickly adjust logic or content without waiting for platform updates
- Seasonal content toggles
- Real-time error handling in journeys
When not to use code-based experiences
- When you need quick, simple campaigns that can be built with no-code tools.
- If you don’t have access to developer resources or testing environments.
- When timeline or budget constraints limit custom development.
- For standard messaging that fits well with built-in platform features.
- When maintainability is a concern — custom code requires ongoing support.
recommendation-more-help
3c815ced-85ff-4d0f-8ef4-003f644f5cd0