Send email when account is 7 days old and not upgraded?

I’m stuck on what appears to be something fairly simple - any advice would be most welcome.

I’d like to send an e-mail to users when their account is 7 days old and they haven’t upgraded to a Pro account. I know that I could schedule something for 7 days when they sign up and cancel it if they upgrade, but I think this runs the risk that if I make changes or a scheduled task fails, it won’t fail safe and a pro user will get an unintended e-mail.

Instead, I’d like to run a daily scheduled task that searches for free accounts that are 7 days old and e-mail them. How could I go about creating this backend workflow?

I can’t see a way to do this on a recurring basis where different e-mails will be sent each day. I can only see a way to schedule e-mails that match this criteria at the time of scheduling the event, not at the time of sending.

On the user data type put a field for the type of account (Pro and whatever other types you have)…the field would most likely be best as a related field to an option set.

Create a backend workflow to send an email notifying user of upgrade. Put a condition onto the email action to send only if the user account type is not Pro.

When user signs up schedule that backend workflow to run 7 days from current date time.

Don’t it will use too many WUs and will become a HUGE burden on your system if you get a lot of users.

Condition on the action of send email as I indicate in this post.

Thanks for the reply. I’m not able to schedule like that in advance unfortunately, as I need to send some realtime data on the day of the send as one of the variables.

I worked around it by creating a 3-step backend workflow - the first searches for users, the second schedules the e-mail and 3rd sends it. It runs each morning so the data is max 24 hours old which is acceptable.

You will use too many WUs the way you set it up. Whatever the real time data you needed could have easily been added into the backend workflow that should be schedule as I explained. Because the workflow scheduled to run will run at the time scheduled, meaning, any real time data would be available when it runs.