Hi everyone!
I’m trying to create a contact-based workflow that captures the first time a sales email is sent. I’ve already created a custom property called “First Sales Email Timestamp”, and set up a workflow that fills this property when an outgoing email is associated with a contact and the timestamp is still empty.
My challenge:
If a contact already received sales emails before I created this workflow, the next email they receive will incorrectly be stamped as the “first” one.
What I hoped to do:
I wanted to filter for contacts with no email activities, but HubSpot workflows don’t seem to support activity count filtering (e.g. “less than X emails sent”).
Workaround I’m considering:
Create a list of contacts who already had outgoing sales emails in the past (based on activity filters), and then exclude that list from the workflow enrollment.
Has anyone solved this differently?
Or is there a better way to backfill or prevent incorrect timestamps?
Hey @COHagan8 what was the workflow criteria you have setup? Do you want a sales email send, open, click etc?
I don’t believe there is a way to easily set something on the last sales email send, you can easily trigger somerthing from the last email engagement date though.
To clarify:
I’m specifically trying to track the timestamp of the first outgoing sales email sent to a contact (not opens or clicks). I’ve created a custom property called First Sales Email Timestamp and the workflow is set up to only populate this property if it’s currently empty.
Here’s how I’ve built it (screenshot attached):
The contact is associated to an email
The email is outgoing
The activity date exists
The property First Sales Email Timestamp is unknown
My Challenge:
The problem is with retroactive contacts. For example:
If a contact already received sales emails in the past (before this workflow existed), then the next sales email will wrongly populate the property — giving a false “first” timestamp.
What I’m trying to avoid:
I want to prevent backdating errors and only track the true first interaction going forward.
Workaround I’m testing:
I’m planning to build a static list of contacts who already had outgoing emails (based on activity filters) and exclude them from this workflow.
Do you think that’s the best way? Or is there a way to filter contacts based on the count of sales emails or check for email activity before enrollment?