The site where users learn English through videos: they watch videos, learn words, practice real dialogues based on these videos, and take comprehension tests. The task needs to be completed clearly according to the specifications, with a deadline of 4 days. We provide all additional information, we will contact you, and we will provide access. Here is the detailed specifications:
Integration
• On the frontend, connect Google Tag Manager (GTM) or directly GA4 (gtag.js).
• Check that events are visible in GA4 DebugView.
Identification
• Before event registration, send with an anonymous user_pseudo_id (GA4 creates it automatically).
• After registration, bind user_id and store it in all subsequent events:
gtag('config', 'G-XXXXXXX', { 'user_id': '<USER_ID>' });
List of events (must implement)
Onboarding
• demo_started — when the user selected "Try demo".
• demo_completed — when completed the demo lesson.
• onboarding_start — when clicked "Start for free" and proceeded to personalization.
• survey_completed — when completed the survey (level, goal, schedule).
• Parameters: level_cefr, goal, schedule.
• starter_plan_shown — shown the "learning plan" screen.
• lesson1_opened — opened the first lesson.
• lesson1_completed — completed the first lesson.
• signup_shown — shown the registration screen.
• signup_completed — registration (parameter method: email, Google, etc.).
• trial_started — activated the 7-day trial period.
Lessons
• video_watched — watched video (parameters: lesson_id, seconds).
• quiz_completed — completed the test (parameters: lesson_id, score).
• ai_dialogue_completed — completed the dialogue with AI (parameters: lesson_id, turns).
What we store in parameters
• level_cefr = level (A1–C2).
• goal = goal (work/travel/study/social/kids).
• schedule = selected schedule (2x15, 3x15, 5x15).
• lesson_id = lesson identifier.
• score = test result.
Verification (Acceptance Criteria)
• All events are sent to GA4 and displayed in DebugView.
• Each event has correct parameters (for example, in survey_completed the level_cefr, goal, schedule are recorded).
• After event registration, they are bound to user_id.
• Server events (trial/subscription/payment) are also sent to GA4.