Skip to main content
Vero 2.0 is built around a few core concepts that work together to help you send the right message to the right person at the right time. Understanding these fundamentals will help you get the most out of Vero.

Projects

A project is your top-level workspace in Vero. Each project contains all your campaigns, user data, settings, and integrations in one isolated environment. You might create separate projects for:
  • Different products or brands
  • Testing vs. production environments
  • Different websites or apps
Each project has its own configuration including timezone, team access, and data source connections. Learn how to set up a project

User Profiles

A user profile represents an individual customer in Vero. Profiles are the foundation for sending messages, tracking engagement, and managing subscriptions. Every profile must have a unique identifier:
  • User ID (id) — Required. Any unique string or number, typically your internal database ID.
Profiles can also have channel addresses needed for messaging:
  • Email address (email) — Required to send email campaigns
  • Phone number (phone_number) — Required to send SMS (must be in E.164 format, e.g., +61 234 567 890)
  • Device tokens — Required for push notifications; supports multiple tokens per profile
You can also add:
  • User properties — Custom attributes like first_name, company, or plan_type, referenced in messages via Liquid
  • Tags — Multiple alphanumeric labels for categorization and preference management
Vero automatically tracks:
  • Activity history — The last 30 days of message interactions and events
  • Subscription status — Whether the user can receive future campaigns
Learn more about user profiles

Events

Events represent actions taken by users at specific points in time, such as “Signed up”, “Clicked Button”, or “Order Completed”. Events are tracked via:
  • The Track REST API
  • Vero SDKs
  • Integrations (e.g., Segment, RudderStack)
Event data can include custom properties used for personalization and segmentation. Events are the backbone of automated journey triggers and behavioral messaging. Learn how to set up event tracking

Campaigns

A campaign links three things together: a trigger, an audience, and a message. Vero 2.0 supports two campaign types:

Single Message (Broadcasts)

One-off newsletter-style campaigns sent to an audience at a specific time or on a schedule. These can be:
  • Immediate — Sent as soon as you launch the campaign
  • Scheduled — Sent at a specific date and time
  • Recurring — Sent on a cron schedule (daily, weekly, etc.)
Learn how to send a broadcast

Journeys (Beta)

Multi-message, event-triggered campaigns with a visual canvas builder. Journeys allow you to:
  • Trigger messages when users perform specific events
  • Add delays between messages (up to 365 days)
  • Build complex flows with up to 150 nodes per journey
Learn how to create journeys Reports are aggregated at the campaign level, tracking opens, clicks, and other engagement metrics for all messages in a campaign. Learn about campaign metrics

Audiences

An audience defines who will receive a campaign. You can create audiences in several ways:
  • CSV/Google Sheets upload — Import user lists directly
  • SQL queries — Pull data from connected data warehouses (PostgreSQL, Redshift, Snowflake, BigQuery, MySQL, SQL Server)
  • Segments — Dynamic groups that automatically update based on user properties, events, and message engagement
Each audience row needs at minimum an id and either email or phone_number (depending on the channel). You can include up to 100 additional custom properties per row. Vero automatically respects unsubscribe status — unsubscribed users are excluded from all campaigns. Learn how to add an audience to your campaign

Segments

Segments are dynamic user audiences that automatically update based on criteria you define. Build segments from:
  • Profile properties (e.g., plan_type = "premium")
  • Events and event data (e.g., “Purchased Product” in the last 30 days)
  • Message engagement (opens, clicks, bounces)
  • Tags
Unlike static lists, segments recalculate membership based on your conditions. They refresh:
  • Manually via the UI
  • Automatically before campaign sends
  • Automatically at journey branch points
Segments created in Vero 1.0 are visible and editable in Vero 2.0 with bidirectional sync. Learn about segments

Messages

A message is the templated content you send to your audience. Messages support multi-channel delivery and can include:
  • Email content — From address, subject, preview text, and body (built via drag-and-drop editor, HTML, or rich text)
  • SMS content — Phone number (from your configured channel) and message body
  • Push content — Title, body, and deep links for iOS and Android
Messages support Liquid templating for personalization using user properties and event data. You can also use Data Feeds to pull real-time external data for dynamic content. Learn how to create email messages Learn how to personalize messages with Liquid

Channels

Channels are the configured connections used to send messages to users.

Email channels

  • Vero Mailer — Built-in, preconfigured option
  • Custom Domain — Send from your own domain
  • Third-party providers — SendGrid, Mailgun, Mailjet, Mandrill
Email channels support domain verification and custom DNS records. Learn how to configure email channels

SMS channels

  • Twilio — Configured with Account SID, Auth Token, and Messaging Service selection
Learn how to configure SMS channels You can configure multiple channels per type and set a default for new campaigns. Channels also support webhooks for tracking message interactions (opens, clicks, bounces, etc.).

Activity

Activity (formerly called “Logs” in Vero 1.0) is a comprehensive record of all user actions and message interactions in Vero. Every action is logged and visible in Vero, including:
  • Events — User actions tracked via API, SDK, or integrations (e.g., “Purchased Product”, “Viewed Page”)
  • Message interactions — Sent, delivered, opened, clicked, bounced, and unsubscribed events for all campaigns
Activity is available in two places:
  • User profile Activity tab — View the last 30 days of events and message interactions for an individual user
  • Campaign Activity — View all message interactions for a specific campaign
Each activity entry includes detailed information such as timestamps, event properties, campaign details, and user identifiers. This makes it easy to investigate message delivery, debug campaign issues, or understand individual user behavior. Learn more about activity logs

Data Sources

Data sources are external databases you connect to Vero for querying and loading audiences on-demand. Supported databases:
  • PostgreSQL
  • Amazon Redshift
  • Snowflake
  • Google BigQuery
  • MySQL
  • Microsoft SQL Server
With data sources, you can write SQL queries or select data views to build campaign audiences directly from your warehouse. Vero Connect is “warehouse-native” — it doesn’t store user data, instead querying your data sources when needed. Learn how to connect to Snowflake

Templates

Templates are reusable email message designs you can use as a starting point for campaigns. Create templates from:
  • Custom HTML imports
  • The drag-and-drop builder
  • The HTML editor
  • Vero’s template library
Templates support Liquid personalization and can be shared across campaigns in a project. Learn how to create and use templates

How it all works together

Here’s how these concepts connect:
  1. You track user profiles and events via API, SDK, or integrations
  2. You create segments based on user properties and events, or build audiences from CSV files or SQL queries
  3. You design message content using templates and Liquid personalization
  4. You configure channels to send via email, SMS, or push
  5. You create a campaign that combines a trigger, an audience, and a message
  6. Vero sends the message to your audience through the configured channel
  7. All activity is logged and visible on user profiles and in campaign reports
Each project keeps everything organized in one place.