Variables
Variables fill in real details when a message is sent, like the contact's first name. They always have a prefix and one pair of curly braces, for example {lead.first_name}. Type { in any message box to pick one.
Your own custom variables work the same way: {custom_variable.your_key} for a lead, {client_variable.your_key} for a client and {agency_variable.your_key} for your whole agency. Each trigger also adds its own variables, listed on its trigger page.
Lead
{lead.name} Full name (first + last). Use {lead.first_name} for first name only. {lead.first_name} First name (split from full name) {lead.last_name} Last name (split from full name) {lead.email} Email address {lead.phone} Phone number {lead.gender} Gender for salutation routing (Mr/Ms/they) {lead.timezone} Lead's timezone (e.g. America/New_York) {lead.country} Country code of the lead {lead.opt_in_method} How the lead opted in (DM, form, etc.) {lead.opt_in_date} Date the lead opted in - e.g. March 15, 2026 {lead.opt_in_date_datetime} Opt-in date with time - e.g. March 15, 2026 at 2:30 PM {lead.opt_in_date_time} Just the time of opt-in - e.g. 2:30 PM {lead.created_date} Date the lead was added to the CRM {lead.created_date_datetime} Created timestamp with time - e.g. March 15, 2026 at 2:30 PM {lead.username} Instagram @username {lead.followers} Number of Instagram followers {lead.verified} Whether the account is verified (true/false) {lead.follows_us} Whether the lead follows the business account (true/false) {lead.score} AI lead score 0-100 {lead.source} Acquisition source (e.g. hashtag, competitor) {lead.source_type} Type of source (organic, paid, referral) {lead.tags} Comma-separated list of tags assigned to this lead {lead.utm_source} Where the lead came from - e.g. instagram_dm, email, chatgpt.com {lead.utm_medium} Channel type - e.g. social, cpc, email {lead.utm_campaign} Which campaign brought this lead in {lead.utm_term} Paid keyword the lead searched, when the link carried one {lead.utm_content} Which creative or link variant was clicked {lead.referrer_url} The page the lead arrived from {lead.appointment_date} The booked appointment date - e.g. March 15, 2026. Resolves from the booking on appointment triggers. {lead.appointment_date_datetime} Appointment date WITH time - e.g. March 15, 2026 at 2:30 PM. Use this when you want to show the exact booked slot. {lead.appointment_date_time} Just the time portion - e.g. 2:30 PM {lead.appointment_date_day} Day of the week - e.g. Saturday {lead.appointment_date_day_short} Short day of the week - e.g. Sat {lead.appointment_date_month} Month name only - e.g. March {lead.last_contacted} Date last contact was made (date only — the source column carries no time) {lead.last_contacted_time} Time of last contact - e.g. 2:30 PM {lead.notes} CRM notes about the lead (useful as AI step context) {lead.opt_in_content} The keyword/content that triggered the lead\ {lead.last_message} Text of the most recent message with this contact, sent or received {lead.last_inbound_message} Text of the most recent message the contact sent you {lead.last_message_channel} Where the last message was - e.g. Instagram, WhatsApp, SMS {lead.last_message_at} When the last message was - e.g. March 15, 2026 at 2:30 PM {lead.last_inbound_message_at} When the contact last wrote to you {lead.company} Company name (from enrichment or the dialer) {lead.conversation_summary} AI summary of the conversation so far {lead.website} Website of the lead or their business {lead.city} City of the lead or their business {lead.region} State or region Your agency
{agency.name} Your company or agency name {agency.email} Support or contact email {agency.calendar} Booking link (Calendly, Cal.com, etc.) {agency.owner_first_name} Agency owner's first name - for personal outreach Client
{client.name} Name of the client this workflow is running for {client.company} Client's company name {client.email} Client's company email {client.phone} Client's company phone {client.website} Client's website URL {client.industry} Client's industry {client.niche} Client's niche {client.timezone} Client's timezone {client.currency} Client's currency code (e.g. USD) {client.logo} Client's logo / avatar URL {client.status} Status of the client {client.business_description} AI/onboarding description of the client business {client.intake_link} The link this client uses to complete onboarding {client.meta_pixel_id} The client's Meta pixel (dataset) ID, from the Default Conversions API connection on their Tracking tab. {client.ga4_measurement_id} The client's Google Analytics 4 measurement ID (G-...), from the Default GA4 connection on their Tracking tab. {client.tiktok_pixel_id} The client's TikTok pixel code, from the Default TikTok connection on their Tracking tab. Connected account
{account.username} Instagram username of the outreach account sending this message {account.id} Id {account.status} Status {account.type} Type Date and time
{time.today} Current date - e.g. March 2, 2026 {time.now} Current time - e.g. 2:30 PM {time.datetime} Full timestamp - e.g. 2026-03-02 14:30:00 {time.year} Current year - e.g. 2026 {time.month} Current month name - e.g. March {time.weekday} Day of the week - e.g. Monday {time.date_iso} ISO 8601 date - e.g. 2026-03-02 (for API calls) {time.hour} 24h hour 0-23 - useful for time-of-day routing Pipeline
{pipeline.id} UUID of the pipeline the lead is in - use in custom code or API calls {pipeline.name} Name of the pipeline (e.g. "Sales Pipeline") {pipeline.description} Description of the pipeline {pipeline.stage_id} UUID of the current pipeline stage {pipeline.stage_name} Internal name of the current stage {pipeline.stage_display_name} The lead's current stage as shown in the pipeline — use this rather than {lead.stage}, which does not resolve. {pipeline.stage_order} Numeric order of the stage in the pipeline (1, 2, 3...) {pipeline.is_terminal} Whether this stage is a terminal/end stage (true/false) {pipeline.is_won} Whether this is a positive (won) terminal stage (true/false) Opportunity
{opportunity.name} Name of the deal {opportunity.value} Deal value in your currency - e.g. $1,500 {opportunity.stage} Stage the deal is in {opportunity.status} open, won, lost or abandoned {opportunity.pipeline} Pipeline the deal is in {opportunity.owner.name} Team member assigned to the deal {opportunity.owner.first_name} Assigned team member's first name {opportunity.owner.email} Assigned team member's email {opportunity.owner.phone} Assigned team member's phone {opportunity.followers} Names of the team members following the deal, comma-separated {opportunity.followers_emails} Emails of the team members following the deal {opportunity.id} UUID of the deal - for custom code or API calls Trigger
{trigger.dm_received.message_content} Content of the DM that triggered this workflow {trigger.message_content} Content of the message (backward compat) {trigger.sender_username} Instagram username of who sent the trigger DM {trigger.contact_name} Full name of the triggering contact {trigger.contact_username} Instagram username of the triggering contact {trigger.contact_email} Email of the triggering contact {trigger.comment_posted.comment_text} Content of the comment that triggered this workflow {trigger.comment_text} Content of the comment (backward compat) {trigger.post_url} URL of the post that was commented on {trigger.tag_name} Name of the tag applied to trigger this workflow {trigger.form_submitted.form_id} ID of the form submission that triggered this workflow {trigger.form_submitted.form_name} Name of the form that was submitted {trigger.form_submitted.qualified} Whether the lead qualified based on form logic (true/false) {trigger.form_submitted.instagram_account_id} First Instagram account ID linked to this form (backwards compat) {trigger.form_submitted.instagram_account_ids} All Instagram account IDs linked to this form (array) {trigger.form_id} Form ID (backward compat) {trigger.form_name} Form name (backward compat) {trigger.old_stage} Previous pipeline stage (opportunity_stage_changed trigger) {trigger.new_stage} New pipeline stage (opportunity_stage_changed trigger) {trigger.pipeline_id} ID of the pipeline (opportunity triggers) {trigger.stage_id} ID of the current pipeline stage (opportunity triggers) {trigger.opportunity_id} ID of the pipeline opportunity that triggered this workflow {trigger.opportunity_name} Name of the pipeline opportunity {trigger.value} Deal value from the opportunity trigger {trigger.type} Type of event that fired this workflow {trigger.appointment_local} e.g. "August 23, 2026 at 2:00 PM CEST". Use this in messages to the contact. Appointment triggers only. {trigger.appointment_local_date} e.g. "August 23, 2026". Appointment triggers only. {trigger.appointment_local_time_tz} e.g. "2:00 PM CEST". Appointment triggers only. {trigger.appointment_host} The same meeting in your calendar’s timezone — for internal notifications. Appointment triggers only. {trigger.appointment_host_date} e.g. "August 23, 2026". Appointment triggers only. {trigger.appointment_host_time_tz} e.g. "8:00 AM EDT". Appointment triggers only. {trigger.meeting_topic} Title of the booking, e.g. "Discovery call". Appointment triggers only. {trigger.timezone} Booker's selected timezone (IANA, e.g. America/Los_Angeles). The formatted variables above already include the zone. Appointment triggers only. {trigger.duration_minutes} Length of the appointment in minutes. Appointment triggers only. {trigger.meeting_url} Zoom / Google Meet / Calendly link, when an integration is connected. Empty when no integration is configured. {trigger.add_to_calendar_url} One link the contact taps to save the meeting in Google, Apple or Outlook. Stays correct if the meeting is moved or cancelled. Appointment triggers only. {trigger.google_calendar_url} Opens Google Calendar with the meeting filled in. Appointment triggers only. {trigger.ics_url} Downloads the meeting as a calendar file (Apple Calendar, Outlook and others). Appointment triggers only. {trigger.appointment_id} Internal ID of the appointment. Appointment triggers only. {trigger.appointment_type} Type of appointment (call, demo, etc.). Appointment triggers only.