REIGN

13 min read · 2,517 words

30-Day Fitness Challenges Online: Daily Check-Ins, Leaderboards and Rewards

Fitness challenge illustration with a 30-day check-in grid, a podium and a trophy

A 30-day challenge is a project with a start date, a finish line and a scoreboard. People join because it ends. Nobody is promising to join a fitness community forever, but thirty days with other people feels doable. That time limit is also why the format suits a WordPress community: you can design the whole thing, run it, learn from it and run it again.

This guide builds a challenge with WB Gamification for check-ins, streaks, leaderboards and rewards, BuddyNext for the group space, and Learnomy for an optional daily lesson. Free and Pro scope is labelled as we go. WB Gamification has no Pro plan at all.

A note on scope. This is a setup guide, not fitness guidance. It says nothing about what anyone should do, how hard, or how often. Participants should consult a qualified professional before taking part in any exercise programme, and your challenge pages should say so. Your challenge should reward showing up, and leave the content of the activity to each person and their own advisers.

The psychology of streaks, including anxiety and burnout, is covered in the guide to streaks and challenges that bring members back. This post is the build: what to click and in what order.

Plan the thirty days on a calendar

Work backwards from a start date. A challenge has more moving parts than a normal community week, so write the calendar before you open a single settings screen.

Phase When What you do
Sign-up Two weeks before Open the challenge space for requests; post the rules; collect questions
Kickoff Day 0 Live event; unlock the challenge; first check-in
Weeks one and two Days 1 to 14 Daily check-ins; weekly recap post; first milestone
Middle stretch Days 15 to 21 Watch for drop-off; mid-point event; peer recognition
Final stretch Days 22 to 30 Last milestone; closing event
Wrap-up Day 31 Close the board; award rewards; publish the recap

Fix the start and end dates in your site’s timezone. WB Gamification’s challenge dates, and its streak days, follow the member’s own timezone, so tell participants what “a day” means and check the edges with a test account.

Decide what a check-in is

Everything in a challenge depends on one definition: what counts as showing up today. Choose it once and make it easy.

Check-in method What the member does Effort Admin load Cheating risk
A post in the challenge space Writes a short update Low Low Low; it is visible to everyone
A daily lesson marked complete Finishes a Learnomy lesson Low Low Low
A submission Describes what they did, with an optional photo, and waits for approval Higher High Reviewed by a person
Daily login bonus Visits the site Lowest None Rewards presence only

A post is the best default. With BuddyNext active, WB Gamification already has a “create a post” action, which awards points with a short cooldown and a daily cap, and members see each other’s updates in the space. If you want something to read each day, a Learnomy course with one lesson per day works too, because completing a lesson also earns points through WB Gamification’s Learnomy integration.

Submissions suit achievements the system cannot see for itself. Members describe what they did, optionally attach a photo, and an admin approves or rejects. Approval fires the points as if the action had happened automatically. Two cautions: by default only a curated subset of actions can be submitted, so a custom check-in action may need a developer to mark it as submittable, and a photo requirement can put people off. Do not ask for body photos, measurements or weigh-ins as proof. A line of text is enough.

How the streak counts

A streak is a count of consecutive days on which the member earned at least one point from any action. It does not depend on logging in; the member has to do something. It follows the member’s timezone.

The grace period is one day by default, adjustable from zero to three days in the streak settings. It can be used once per streak, so two missed days in a row break the streak. Milestones of 7, 14 and 30 days fit a thirty-day challenge neatly, and you can set the bonus points at each one, including zero for a notification only.

Ask yourself how forgiving the challenge should be, then set the grace period to match and say so in the rules. A hard “miss a day and you are out” rule suits a small group that chose it. An open challenge usually works better when a slip is not the end.

Build the challenge in WB Gamification

Under Gamification, Challenges, add a new challenge and fill in:

  • Title: a specific name, such as the name of your challenge.
  • Action: the thing that counts, from the list of active triggers on your site.
  • Target: how many times.
  • Bonus points: awarded on completion, on top of what each action earns.
  • Start and end dates: members cannot start a dated challenge before its start date, and it closes automatically after the end date.
  • Status: Active to show it, Draft to hide it.

The member sees a progress bar, days remaining and a Completed badge, and gets a notification when they finish. Display it with the Challenges block or the challenges shortcode.

Be clear in your own head about what a challenge counts. It counts completions of an action within a period. It does not by itself require them on different days. If “once a day for thirty days” is the point, pair the challenge with the streak, and set the target below thirty if you want to allow a few missed days. Then test the whole thing with a fresh account before you open sign-ups, including how it behaves when a member does the action several times in one day.

Three formats

Format Who competes How it works
Individual challenge Each person against the target Own progress bar; completes when the target is met
Community challenge Everyone together One shared counter; if the target is reached before the deadline, every member who contributed at least once gets the bonus
Cohort league Small groups of similar standing Weekly sort into tiers, with promotion and demotion at the end of the week and weekly points that reset

A community challenge turns a thirty-day project into a group goal: for instance, a target number of check-ins across all participants. No one member can complete it alone. Combine it with an individual challenge and you give both the quiet and the competitive a goal.

Leaderboards that do not turn on people

The WB Gamification leaderboard ranks members by points over a period: all-time, monthly, weekly or daily. Members see their own rank under the visible list even if they are not near the top. BuddyNext links to the leaderboard from profiles and reads its rankings from WB Gamification.

A few design choices make a leaderboard encouraging:

  • Use a short window. A weekly board gives latecomers a race they can still win. A thirty-day all-time board is just a head start for whoever signed up first.
  • Score consistency. Points should come from check-ins, replies to other people and finishing lessons. Do not rank people on weight, body measurements, distance, speed or any other performance figure. We recommend a challenge that rewards showing up, and that leaves each person’s activity to them.
  • Let people opt out. Members can choose not to appear on the leaderboard and can hide their rank on their profile. An opted-out member is excluded from all snapshots, and admins cannot override that.
  • Consider leagues instead. In a cohort league a member with a few hundred points is never ranked against someone with tens of thousands.

Leaderboard positions come from a cached snapshot that refreshes on a schedule, so very recent activity can take a short while to show. If you award points by hand and need an immediate update, clear the snapshot cache in the settings.

Rewards that cost almost nothing

Recognition does most of the work. Keep prizes small and make sure everyone who finishes gets something.

Reward Cost to you How
Badges None Thirty default badges plus unlimited custom ones, awarded automatically on rules such as points milestones
Levels None Five default levels, from Newcomer to Champion, driven by points earned
Peer kudos None A member thanks another with an optional short message; the receiver earns 5 points and the giver 2 by default, with a daily limit on points
Redemption store Your own rewards Members spend points on rewards you define, with an optional stock limit
Completion certificate None A Learnomy course for the challenge issues a certificate on completion

In the redemption store, discount rewards generate a coupon automatically through WooCommerce, and custom rewards are fulfilled by hand and marked as fulfilled in the admin. Spending points never costs a member their place on the leaderboard or their level, so a reward does not penalise the person who claims it.

Be cautious with prizes that suggest health outcomes. Reward the check-ins, not a result.

Run the daily lesson in Learnomy

If you want a thing to read or watch each day, build the thirty days as a course. Each lesson holds the day’s note, a short video or an audio file. In the free plugin every lesson has an Available date, so you can release Day 1 on the start date, Day 2 the next day and so on, for the whole group at once.

If people start at different times, which suits a rolling challenge, the per-student drip countdown after enrolment is a Learnomy Pro feature, as are cohorts. Free also includes completion rules, sections and certificates.

Finishing a lesson earns points through the Learnomy integration, so the lesson doubles as a check-in, and a streak runs on lesson completions alone.

Live moments with Eventonomy

A kickoff, a mid-point session and a closing event give the challenge a pulse. Eventonomy’s free plugin handles virtual events with a personal join link for each registrant, RSVPs with capacity and a waitlist, and reminders one day and one hour before. A weekly check-in call is a weekly repeating event. Seeing these events in the BuddyNext feed and search needs BuddyNext Pro.

The community space

Create a Private BuddyNext space for the challenge, and have people ask to join during the sign-up phase. The About tab holds the rules before anyone requests a place. Owners and moderators can post an announcement that pins to the top of the space feed, with an optional expiry time, which suits the daily prompt.

Moderation is in the free plugin: reports, banned words, a new-member review gate and per-space bans. Write rules for what is out of bounds, such as sharing another person’s data, selling products and giving other members instructions on how to exercise or what to eat or take. Direct a participant who needs advice to a qualified professional. Use the community guidelines template for the wording.

Test it before anyone joins

A challenge fails in public, so rehearse it in private. Create two or three test accounts and run through the following before you open sign-ups.

  1. Make a check-in as a test member and confirm the points, the streak count and the challenge progress all move.
  2. Do the same action several times in one day and see what the progress bar does.
  3. Skip a day and confirm the grace period behaves the way your rules say.
  4. Check the start and end of the window in your site timezone and in a member timezone that is a few hours away.
  5. Opt a test account out of the leaderboard and confirm it disappears from the board.
  6. Complete the challenge and confirm that the bonus, the notification and any badge arrive once.

Write your rules page at the same time. It should say what counts as a check-in, what a day means, how many misses the grace period allows, when the challenge ends, what the rewards are, and what is out of bounds in the space. Link to it from the About tab of the space, the announcement on Day 0, and the welcome message. A rule nobody can find is a rule nobody followed.

After day thirty

Close the challenge on the date you gave. Award the rewards, publish a recap and thank people by name where they agree to it. Then look at the numbers: how many joined, how many checked in on day 1, day 15 and day 30, how many returned for the next thing. The community metrics guide explains which numbers to trust.

Decide what happens next before the challenge ends, because the end is when interest is highest. A second challenge, a monthly event or a library of past daily lessons all work. For a group that moves through a fixed program together, running a cohort programme is the next step.

Plans at a glance for the challenge

You want Plan
Points, badges, levels, streaks, challenges, community challenges, leagues, leaderboards, kudos, submissions, redemption store WB Gamification (no Pro plan)
Daily lessons with a fixed release date, completion rules, certificates Learnomy free
Per-student drip, cohorts Learnomy Pro
Spaces, announcements, reports, safeguards; WB Gamification shows up in BuddyNext as an Achievements tab and a leaderboard BuddyNext free
Eventonomy events and course items in the community feed BuddyNext Pro

The free versus Pro page shows each plugin side by side. Reign is built to work with BuddyNext and every Wbcom plugin, so the whole site shares one design, and what Reign is explains the theme. For a similar community that rewards a daily habit of a different kind, see the guide to guided meditation memberships, and for the broader picture the guide to gamification in WordPress communities.

Frequently asked questions

Does WB Gamification have a Pro version?

No. Leaderboards, challenges, streaks, leagues, the redemption store and the rest ship in the free plugin, with no add-on model.

Can the challenge require a check-in every single day?

A streak counts consecutive days with at least one point earned, with a grace period you can set from zero to three days. A challenge counts completions of an action within its dates. Use the streak for “every day” and test the combination before you launch.

How do I stop people gaming the leaderboard?

Choose check-in actions that are visible to others, such as a post in the challenge space, or have an admin approve submissions. Points have daily limits and cooldowns on most actions, and you can adjust them. Do not rank on figures that invite exaggeration.

Can members opt out of the leaderboard?

Yes. Members can opt out of leaderboards and hide their rank on their profile. Admins cannot override an opt-out.

Should I give health or exercise instructions in the challenge?

No. Leave the activity to each person. Participants should consult a qualified professional before taking part, and the challenge should reward showing up.

Can I give prizes?

Yes. The redemption store handles discount coupons through WooCommerce and custom rewards you fulfil yourself. Keep prizes small and make sure everyone who completes the challenge gets some recognition.

Reading
13 min · 2,517 words
Published
Jul 20, 2023
Shashank Dubey
Reign contributor

Writing about WordPress communities, BuddyPress, BuddyBoss, LMS plugins, and the business of paid communities.

Keep reading

More from the Reign blog

Browse all posts on community, WordPress, BuddyPress and the studio of plugins behind Reign.

What customers say on Trustpilot

Swift and expert coding!

Swift and expert coding by Kerit to apply a personalised display adjustment on the Reign Theme for a media plugin that was not fully supported at the moment.

RussellGB