Skip to main content
— How-to

Nudge students who haven't started a course

Alva Courses gives Shopify Flow both halves of a nudge: a Course enrollment created trigger and a Get course progress action. Wait 7 days after enrolment, look up the student's progress, and email anyone who has completed less than 10% of the course.

How the nudge works

Course enrollment created fires whenever a student is enrolled: by purchase, by you, by CSV import, by a membership tag, by free self-enrolment or by a Flow action. Flow's Wait step pauses for 7 days, Get course progress reads where the student is, and a condition decides whether to email.

Get course progress returns enrolled, percentComplete, completed, lessonsCompleted and accessExpiresAt for later steps. percentComplete runs from 0 to 100 and counts live lessons, not drafts. enrolled is false for a student who was removed or whose access was revoked. See the actions reference.

Build the workflow

1. Create a workflow

In your Shopify admin, open Apps → Flow and click Create workflow. Then click Select a trigger.

2. Choose Course enrollment created

Choose Alva Courses, then Course enrollment created. Its customer is the newly enrolled student. The triggers reference lists its fields.

3. Wait 7 days

Add a Wait step set to 7 days. A week is long enough for a keen student to make a start, and soon enough that the purchase is still fresh. Flow allows waits of up to 90 days.

4. Add Get course progress

After the Wait, add Get course progress from Alva Courses. In Course ID or URL handle, click Add a variable and choose the trigger's Course ID rather than typing an ID, so the workflow works for every course.

5. Check the progress

Add a condition on the Get course progress values: enrolled is true and percentComplete is less than 10. Students who left, lost access or have made a real start stop here.

6. Send the nudge

On the condition's Then branch, add Resend course access email from Alva Courses, again with the trigger's Course ID variable as its course. It resends the student your enrolment email, with the button into the course.

7. Name it and turn it on

Name the workflow Nudge students who haven't started a course and click Turn on workflow. Students enrolled before then aren't nudged; it starts with the next enrolment.

8. Test it with a short wait

Make a copy of the workflow with its Wait set to 5 minutes and turn the copy on. Enrol a test customer with your own email address, and the email should arrive about 5 minutes later. Turn the copy off and delete it when you're done.

9. Read the run

The copy's recent runs in Flow show the values Get course progress returned and which branch the condition took. On the Shopify Flow settings page in Alva Courses, Flow activity → Actions run lists both Alva actions.

Choose the email that goes out

Resend course access email is Alva Courses' own email, so it reaches every enrolled student with an email address, subscribed to marketing or not. It resends the enrolment email they already got; edit its wording under Settings → Edit Email Template, and the change applies to every enrolment email.

Send marketing email from Shopify Messaging (formerly Shopify Email) lets you write a dedicated nudge, such as You haven't started your course yet. Shopify only sends it to customers subscribed to email marketing, and it can't print workflow values such as Course title.

Either way, each enrolment gets one nudge. Resend course access email fails with a reason if course emails are turned off in Alva Courses or the student has no email address, and Flow shows that reason in the run.

Ways to adapt it

The same trigger, Wait and progress check make other re-engagement workflows with a change or two.

  • A second nudge. After the email, add another 7-day Wait, a fresh Get course progress and the same condition, so students still under 10% after two weeks hear from you once more.
  • Stalled students. Wait 21 days and change the condition to percentComplete is greater than or equal to 10 and completed is false, to reach students who started and stopped.
  • Paid enrolments only. Before the Wait, add a condition that Enrollment source is equal to purchase, to leave out students you added by hand or by import.
  • Tagged enrolments. Students enrolled by Enroll tagged customers in a course fire the trigger too, with the source flow.

Frequently asked questions

Does the nudge work for every course?

Yes. The workflow passes the trigger's Course ID to Get course progress and Resend course access email, so one workflow checks whichever course the student enrolled in. Add a condition on Course ID to limit it to one course.

Will students who started the course get the email?

No. The condition only continues when the student is still enrolled and percentComplete is under 10. Anyone who has completed 10% or more of the live lessons, left the course or lost access is skipped.

Why use Resend course access email instead of a marketing email?

Resend course access email is Alva Courses' own email, so it reaches every enrolled student with an email address. Send marketing email only reaches customers subscribed to email marketing, though it lets you write a dedicated message.

Can I nudge students who enrolled before I built the workflow?

Not with this workflow. Alva Courses sends Course enrollment created only for enrolments that happen while a turned-on workflow uses it. For existing students, use progress tags and a Shopify customer segment instead.

See also

Was this helpful?

Still stuck? Email us.

Last updated 2026-10-01