Shopify Flow is an ecommerce automation platform that enables you to automate tasks and processes within your store and across your apps.
We're moving the community! Starting July 7, the current community will be read-only for approx. 2 weeks. You can browse content, but posting will be temporarily unavailable. Learn more
Hi Everyone
I want to use shopify flow app to send automated emails to a segment of customers starting from a specific time. The segment has more than 1000 customer therefore get customer data does not work. Any idea how it can be done?
Hi. You can divide your 1000+ customer segment into smaller groups of 100 customers each, then create separate Flow workflows for each sub-segment to send your automated emails at your desired time.
You can send emails to 1000+ customers in batches of 100 customers each. Here’s a schematic outline of how this would work:
The workflow is triggered according to a schedule.
The first batch of customers is selected using the filter “tag:required_segment and tag_not:sending_email_processed”.
For each customer in the list:
3.1. An email is sent
3.2. The tag “sending_email_processed” is added
3.3. If this is a recurring campaign, the "sending_email_processed" tag removal is scheduled a few hours later, once the campaign is finished.
If the retrieved customer list is not empty, it means not all customers have been processed yet, so the same workflow is triggered again.
This means the workflow will keep running until all customers have been processed.
Unfortunately, Shopify Flow does not support steps 3.3 and 4 from this list, but you can achieve this using the Flow Companion app.
Let me know if you’re okay with using a third-party app, and I’ll outline the workflow for you step by step.
Be more creative with your segments -- create another segment with the same conditions and add, say, "and shopify_email.delivered MATCHES (date <= -7d) " -- this will target those same customers who also has not received emails in the last 7 days.
Then trigger on "Customer joined segment" for this new segment.
This will become a weekly spam 🙂 routine.
Or follow the @Mivicle suggestion, just schedule your flow for every 10 minutes and delay tag removal for 7days -- the flow will do 10 runs sending e-mails, then do nothing (since "get customer data" will return empty because the tag is still there) until tag is removed -- for a week, then will do 10 runs again...
@tim, how you suggest removing the tags a week later? Also in batches of 100 customers every 10 minutes? In that case, you’ll have two workflows competing with each other — one adding the tag and the other removing it.
You can’t schedule the tag removal in the main workflow because the customer information is lost after the Wait action:
Yes, you're right!
Wait action requires Data Refresh, as they call it: https://help.shopify.com/en/manual/shopify-flow/reference/actions/wait#c (though the reason given is kinda stupid IMO). Frankly, did not know about this.
Still possible I believe, using a temp tag:
Why a 2-step process -- it is needed to give time to safely remove original tag, but not yet start assigning it again.
Otherwise there is a risk of removing freshly-assigned tags, as you called it, "competing tasks".
Of course, yours is a much nicer solution, using creative segmentation is a nicer solution too.
2. Another workflow starts with the “Customer: custom trigger triggered” trigger. It checks if the Specifier matches the value from the first workflow, and if it does, it sends an email.