Create FluentCRM contacts for newly-enrolled LearnDash students
When a user is enrolled into a LearnDash course, this workflow creates or updates their FluentCRM contact by email address, so every student on your WordPress site can receive your course emails.
LearnDash
FluentCRM2 steps Setup ~5 min Used on 2.8k sites Free to import

What this workflow does
LearnDash handles lessons and progress, but it is not built for email marketing. If you send welcome sequences, course tips or offers from FluentCRM, your students need to be contacts there first. This workflow makes sure each enrolled student is.
The LearnDash trigger, Enrolled Into a Course, fires when a user is enrolled into a new course. The enrolment data, including details of the WordPress user, is passed on. The FluentCRM step, Create or Update Contact, then creates a contact for that email address, or updates the contact that already has it.
Both plugins run on your WordPress site, so student details stay on your own server. A student who enrols in a second course updates the same contact rather than making a new one. Each enrolment shows as a run in Task History, so you can confirm a student reached FluentCRM.
Welcome series for new students
A FluentCRM automation greets new contacts. Once each enrolled LearnDash student becomes a contact, they receive the welcome emails without you adding them by hand.
Announcing new courses to past learners
Everyone who has enrolled in any course sits in FluentCRM, giving you a list of learners to tell when you publish the next course.
Free course as a lead magnet
Visitors sign up for a free LearnDash mini course. Each enrolment adds them to FluentCRM, where you can follow up about your paid programme.
How this workflow runs
What happens at each step once the workflow is on, and what you need before you import it.
LearnDash Enrolled Into a CourseFires when a user is enrolled into a LearnDash course on your site. The enrolment and user details are passed on for mapping in the next step.
FluentCRM Create or Update ContactCreates a FluentCRM contact for the student, or updates the contact that already uses the same email. Map the user's email first, then first and last name if you want them stored.
What you need
- FlowMatticCore
- LearnDash PluginPlugin
- FluentCRM PluginPlugin
After importing, map your own data. To keep the template universal, not every step is pre-filled. Open each step in the builder and connect your accounts and fields (channels, lists, sheets, recipients) before you switch the workflow on.
Make it yours
Changes worth making after you import it.
- Add FluentCRM's Add Tags to Contact after the contact step and map the course title into a tag, if the trigger provides it, so you can segment students by course.
- Enrol a test user in a course after import so FlowMattic captures a sample, then map the email and name fields in the FluentCRM step from it.
- If only one course should feed FluentCRM, add a Filter between the steps that continues only when the course name or ID equals that course.
Questions about this workflow
Does a LearnDash student enrolled in two courses get two FluentCRM contacts?
No. The FluentCRM step matches by email address, so the second enrolment updates the existing contact instead of adding a duplicate.
Are students enrolled before import added to FluentCRM?
No. Only enrolments that happen while the workflow is on start a run. Existing students can be brought in with FluentCRM's own import tools.
Does it matter how the student was enrolled in LearnDash?
The trigger listens for users being enrolled into a course. Enrol a test user the way your students usually join, then check Task History to confirm a run started.
Is any student data sent outside WordPress?
Not by this workflow. LearnDash and FluentCRM are both WordPress plugins, so the contact is written on the same site where the student enrolled.
More CRM & Contacts workflows
Other ready-to-import templates from the same category.
Import this workflow into your WordPress site
Download the JSON, import it from the Workflows screen and connect your accounts. Every run stays on your server, with no per-task fees.
30-day money-back guarantee Unlimited workflows and runs Self-hosted




