Who this is for: standards, education and membership teams. What you'll need: Power Automate, and CPD records in Dataverse. How long: an afternoon, most of it deciding the schedule rather than building. What you'll have: reminders that go out on time, to the right people, and stop when they should.
Decide the schedule before you open Power Automate
The build is easy. The schedule is the bit that determines whether this changes behaviour or just adds to inbox volume.
One letter at the deadline doesn't work. By then anyone who's going to miss it has already missed it. What works is a sequence with enough runway to act on.
- Ninety days out. Informational. Here's where you are, here's what's outstanding. Most people who are slightly behind fix it here.
- Thirty days out. Specific. Not "you are behind" but "you need six more hours, four of them in your ethics category".
- Seven days out. Short and direct, and this one goes to a genuinely small group by now.
Three messages that arrive when somebody can still act beats twelve that arrive regardless.
Get the at-risk list right first
Before building anything, work out how you identify somebody who is behind. Do it as a view or a query you can look at, and check it against people you know.
This is harder than it sounds in most professional bodies, for a reason worth naming: your CPD year probably doesn't run with your membership year. Cycles that are rolling, cohort-based, or anchored to each member's join date all mean "behind" is calculated per member rather than against one date.
If you can't currently ask your system "who is behind on CPD with two months to go", that gap is the actual project, not the reminders. A flow built on a list you don't trust sends confident emails to the wrong people.
Also settle the exemptions now. Members on a career break, retired fellows, people mid-appeal. Nothing damages trust faster than chasing somebody you already excused.
Step one: build the flow
- Go to make.powerautomate.com, choose Create, then Scheduled cloud flow.
- Name it something the next person will understand: CPD reminder 30 day. Build one flow per stage rather than one clever flow with branches; three simple flows are far easier to fix at eight in the morning.
- Set it to run daily. It checks every day and only finds people who hit the thirty-day mark that day, which spreads sending out naturally rather than dumping 400 emails on one morning.
- Add a List rows action against your CPD records, and filter it to your at-risk condition.
- Add Apply to each over the results, and inside it send the email.
- Save. Don't turn it on yet.
Step two: make the email say something useful
A reminder saying "you are behind on CPD" is a nag. A reminder saying what's outstanding is a to-do list, and people act on to-do lists.
Include the specifics you already hold: hours recorded, hours required, the breakdown by category if your scheme has one, the deadline date, and a direct link to where they record it. Not a link to the homepage, but a link to the recording screen.
Keep it short. Nobody reads paragraph three of a compliance email.
Put a real person's name and address in the reply-to. A member who reads this and thinks "but I did that course in March" needs somewhere to say so, and a no-reply address turns a two-minute fix into a complaint.