Skip to content

[Proposal] Smart Push Automation for Learner Motivation in Open edX Mobile #475

@IvanStepanok

Description

@IvanStepanok

Type of Request

Product Proposal (larger features)

Feature Description

Smart Push Automation Engine (SPAE)

This proposal introduces the Smart Push Automation Engine (SPAE) — a client-side module that transforms basic notifications into personalized, behavior-driven prompts, helping boost learner engagement, course completion, and app retention on Open edX Mobile.

Detailed Product Proposal

https://openedx.atlassian.net/wiki/x/agAzPQE

Overview

Learners often drop off after short periods of inactivity because current push notifications lack personalization and timely re-engagement, leading to low retention and course completion on Open edX Mobile.

Use Cases

Learner

  • As a learner, I need to receive warm, timely, and personalized nudges based on my individual progress and typical activity times, in order to maintain my learning momentum and avoid drop-offs.
  • As a learner, I need to receive personalized reminders after periods of inactivity (e.g., 1, 3, 7, or 14 days without progress) in order to stay motivated and return to my courses before losing learning momentum.
  • As a learner, I need to enable/disable notifications in order to decide whether I need notification by me.
  • As a learner who is actively progressing through a course, I need to receive encouraging push notifications when I complete sections or approach major milestones in order to maintain engagement and feel rewarded for consistent learning behavior.
  • As a learner who has completed over 50% of a course, I need to receive “final stretch” motivational pushes in order to encourage course completion and celebrate my progress.

Instructor

As an instructor, I need an automated way to keep learners engaged and progressing through modules, in order to increase completion rates without manually creating campaigns or reminders.

Operator

As an operator, I need a client-side engagement system that functions independently of ACE or Braze, in order to sustain learner retention and app visibility even when server-driven campaigns are unavailable.

Platform Administrator

As a platform administrator, I need to configure smart throttling and message frequency limits (e.g., one motivational push per day, deduplication within 60 minutes) in order to prevent user fatigue and maintain a respectful, non-intrusive communication experience.

Proposed Solution

SPAE introduces a lightweight, client-side system that helps learners return to their courses through gentle, timely, and context-aware reminders — without collecting or analyzing personal data.

Behavioral Triggers

SPAE uses simple, transparent re-engagement rules (e.g., D1, D3, D7, D14 after inactivity) to encourage learners to continue at the right time.

Adaptive Timing

  • Notifications are delivered within the learner’s typical activity window (e.g., 08:00–20:00 local).
  • Optional quiet periods can pause reminders during weekends or holidays to respect user downtime.

User Respect and Control

  • The engine limits motivational pushes to one per day and suggests pausing notifications if activity remains low.
  • Maintains attention and trust instead of pressure.

UX Integration

A new section in Settings → Notifications → Learning Motivation will allow learners to manage, pause, or disable motivational reminders directly from the app.

Testing and Refinement

The tone, timing, and message variations will be tested via A/B experiments to ensure SPAE feels helpful, relevant, and culturally appropriate across locales.

Core Capabilities

  • Local activity tracking: monitors learner interactions such as last visited course or section, completed lessons, and overall progress.
  • Behavioral triggers: automates re-engagement based on time and progress milestones (D1, D3, D7, D14 after inactivity; ≥50% “final stretch”; next module available).
  • Adaptive delivery time: sends notifications within each learner’s habitual engagement window, restricted to daytime hours (08:00–20:00 local).
  • Smart throttling: limits motivational pushes to one per day and prevents duplicates within 60 minutes.
  • Dynamic schedule rebuilding: learner activity resets the push cycle to ensure relevance.
  • Conflict prevention: ensures only one active campaign per user.
  • User respect and control: suggests pausing or disabling pushes if too frequent.
  • Content personalization: supports placeholders like progress, course/module names, contextual details.

Example Scenarios

  • New learner: Started but didn’t complete a section → receives reminder to resume.
  • Active learner: Completed several lessons → prompted to start next module.
  • Experienced learner (≥50%): Receives “final stretch” motivational messages.

Sample Messages

New Learner

  • D1: “You made a great start yesterday - let’s keep your spark alive!”
  • D3: “Your lesson misses you. Let’s continue learning today.”
  • D7: “It’s been a week - perfect time for a comeback!”
  • D14: “Two weeks off - let’s get back in the zone.”

Active Learner

  • D1: “Ready to start ‘%@’ today?”
  • D3: “‘%@’ is calling your name - keep the streak alive.”
  • D7: “One week away - ‘%@’ is still waiting for you.”
  • D14: “Two weeks off - finish strong with ‘%@’!”

Experienced Learner (≥50%)

  • D1: “You’ve completed %@ of ‘%COURSE%’ - keep that momentum going!”
  • D7: “Final stretch - %@ done. Let’s wrap it up together!”
  • D14: “Two weeks away - time to finish ‘%COURSE%’.”

Architectural Context and Alignment

SPAE operates entirely on-device and complements existing server-driven notification architecture.

  • Works with existing edx-platform notifications and ACE.
  • No backend schema changes: leverages progress APIs and local SQLite storage.
  • Native scheduling via APNS/Firebase, respecting quiet hours.
  • Smart coordination: defers to ACE/Braze if campaigns are active.
  • Offline fallback ensures learners stay engaged without connectivity.

Dependencies and Impacted Areas

  • Mobile apps (iOS/Android): notification settings UI, local DB, scheduling logic.
  • Localization/i18n: translation strings, tone consistency, RTL support.
  • Privacy/GDPR/FERPA: local-only activity timestamps, clear opt-in/out flow, no personal data.
  • Optional: ACE/Braze hooks for unified reporting and analytics.

Other Approaches Considered

Approach Limitation
Server-only (ACE/Braze) Costly, not always available
Email campaigns Not mobile-contextual, slower feedback
Web plugins Lack visibility into native/offline usage

Implementation Plan

Milestone 1 – Research & Feasibility

  • Define local events (open, finish, progress).
  • Identify OS constraints for local scheduling.

Milestone 2 – MVP

  • Implement local queue, D1/D3/D7/D14 triggers, throttling.
  • Add Settings → Notifications → Learning Motivation.
  • Basic i18n support.

Milestone 3 – ACE/Braze Integration (Optional)

  • Forward triggers to ACE for hybrid mode.

Milestone 4 – UX & Localization & A/B

  • Tone and variant testing, metrics instrumentation.

Ownership and Maintenance

  • Maintainers: AXIM Mobile Working Group
  • Product UX/UI WG: review learner-facing strings and localization.
  • (Optional) Marketing WG: align messaging and visibility goals.

Contact: ivan.stepanok@raccoongang.com

Competitive Research

Platform Approach Insights
Coursera Behavioral push notifications Reinforces progress, increases return rate
Duolingo Gamified streaks, emotional triggers Strong daily engagement and retention
Khan Academy Teacher-initiated reminders Works in classrooms, less adaptive for self-paced learners

Open edX Opportunity

Open edX can become the first open-source platform to include a configurable, client-side behavioral automation engine, enabling privacy-preserving re-engagement without third-party infrastructure.

Impact on App Store Visibility

  • Higher engagement → improved Android Vitals (Google Play).
  • Increased active sessions → better retention → improved App Store ranking.

SPAE strengthens both pedagogical outcomes and organic growth signals.

Telemetry and Success Criteria

Category Metric Target Notes
Primary D7/D30 retention uplift +15–30% Benchmark based
Return-to-course rate +10–20% Reactivation measure
Modules completed per returning learner Steady or improved Indicates depth
Secondary Sessions per user/week +10% Reflects stickiness
Notification opt-out rate <5% Ensures trust
Duplicate-push incidents 0 Confirms throttling logic
Data boundaries Local-only timestamps No personal data stored

Privacy and Compliance

  • Aggregated, anonymized telemetry only.
  • No personal data in templates.
  • Fully GDPR/FERPA compliant.

Open Questions

  • Configuration: admin JSON vs. in-app feature flag?
  • Privacy: confirm local-only storage.
  • Tone/frequency policy: “friendly” vs. “formal.”
  • Operator policy: when to prefer ACE over SPAE?

Link to Product Proposal

https://openedx.atlassian.net/wiki/x/agAzPQE

Status

New

Proposed By

Raccoon Gang

Metadata

Metadata

Assignees

Type

No type

Projects

Status

[Prod Proposals] In Review

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions