Page MenuHomePhabricator

[DE 3.3.2 Epic] Evergreen account creation prompt within the Mobile Apps
Open, HighPublic0 Estimated Story Points

Description

Release dates:

  • Android: September 15, 2026
  • iOS: September 17, 2026

Superset: Tracking New Accounts Hourly

Background

This epic covers a standing, always-on prompt that identifies anonymous readers as "account-ready" based on behavior, then makes a dynamic, benefits-led case for creating an account. Unlike prior account-creation prompts tied to specific campaigns (Year in Review early access, Reading Challenge join flow), this is evergreen: it runs continuously as part of the core funnel, not tied to a launch date or season.

Our primary goal will be to convert casual readers (reading multiple times a month) into account-holding active readers (reading multiple times a week). We will deliberately not seek to convert new users into account holders, because too many asks early on in their experience with the app might risk churn.

The team has seen in the past that users rarely read the onboarding messages for features, so this prompt will attempt to illustrate the multiple benefits of having an account.

On both apps, there are currently have pop-ups to ask users to create an account to sync reading lists (shown below), but they do not yet communicating the other values of having an account to users as they become casual users of the app.

Screenshot_20260813-135443 (1).png (1,080×2,400 px, 389 KB)
Screenshot 2026-08-12 at 9.02.00 AM (3).png (1,179×2,556 px, 1 MB)
Hypothesis

DE 3.3.2 If we show casual app readers readers an account-creation prompt, we’ll see a 20% increase in newly created accounts compared to previous year baseline for a 15-day time window.

User story
  • As an anonymous reader who has demonstrated engagement with the app, I want to see a clear, benefits-led case for creating an account, based on what I've actually done, so I understand what I'd gain before being asked to commit.
Requirements

Eligibility & Display

  • Only shown to logged-out users who are "account-ready"
  • A user qualifies as "account-ready" when they meet the following requirements:
    • Opens the app during first 7 days (App open tracking can be proxied by an impression of either Article view or one of the Main tabs of the app)
    • Opens the app again during a consecutive 2nd 7 days (App open tracking can be proxied by an impression of either Article view or one of the Main tabs of the app)
  • The first time a user is identified "account-ready", the prompt is shown starting on their next app open, not on the session where the threshold was crossed
    • Prompt can show within Home, Saved, or Article view when accessed through internal link (suppress on article view when a user is arriving from a Deep link),
    • Show it NOW to all users who already meet the requirements
    • From now on, show it one time to readers as they reach this threshold, indefinitely
  • Prompt should be a lower priority than other existing tooltips/prompts. Do not show this prompt at the same time as another prompt or tooltip. 
  • Initial prompt should only show once per install: once shown and the user ignored or closed, it does not re-show regardless of continued reading behavior. Do not re-show if a user has cleared their reading history and then becomes eligible again.
  • If a user taps "Maybe later" on the prompt, they can see it 1 more time (once the user has an additional 2 app open days). The maximum impressions is 2. If they tap "Maybe later" on their 2nd impression, the prompt is never shown again.

Prompt format

  • Full-screen prompt presented on app open (once eligible), containing:
    • Header: Wikipedia is better with an account
    • A carousel of benefit slides with an illustration for each item, user can swipe between items in the carousel
    • A persistent primary CTA ("Create account" or similar) that stays visible below the carousel across all slides
    • Persistent secondary CTA for "Maybe later" that shows the prompt again once the user has an additional 2 reading days in their history
    • Dismissible with X/Done
  • Carousels communicate the current value propositions of having an account in a visual and dynamic way so that even users who don't read the text can understand the benefits
    • Slide 1: Year in Review
      • See your reading days come together in Year in Review
      • Shown in illustration: Wireframe of Year in Review (Avoid text to keep it universal across languages)
      • Once a year, your reading days come back as a look at where the year took you, ready to share.
      • X is replaced with number of cumulative unique reading days (reading day = a day that has at least one article in history)
    • Slide 2: Saved
      • Sync your saved articles
      • Shown in illustration: Wireframe of Saved articles on multiple devices (Avoid text to keep it universal across languages)
      • Log in to your Wikipedia account to allow your saved articles to be synced across devices. 
      • X is replaced with current number of saved articles
    • Slide 3: Activity
      • Revisit your recent reads with Activity
      • Shown in illustration: Wireframe of Activity (Avoid text to keep it universal across languages)
      • See your reading time, explored topics, and the reach of your contributions in the Activity tab
      • X is replaced with articles read this month from Activity
    • Slide 4: Editing
      • Get credit for your edits
      • Shown in illustration: Wireframe of contributions screen (Avoid text to keep it universal across languages)
      • Build a track record you can be proud of, with contributions across Wikimedia projects credited to your account.
  • Prompt must be accessible with VoiceOver and Talkback, and dynamic type/increased font sizes
  • After user logs in or creates an account through the prompt, land them back where they were when they started
  • After users log-in, ensure syncing reading lists is on by default [Should be existing behavior]

Remove legacy prompts

  • Remove existing log-in prompt for reading list syncing 
Screenshot_20260813-135443 (1).png (1,080×2,400 px, 389 KB)
Screenshot 2026-08-12 at 9.02.00 AM (3).png (1,179×2,556 px, 1 MB)

Dynamic numbers within headings [de-scopable if urgently needed]

  • Make the prompt more personalized, by using real user data when available within the headings
  • X's are replaced with the user's real data at the moment they see the prompt, if the user has any. If the user does not have data, the number is simply not shown. This works in English, but may require separate translation strings for other languages.
    • Slide 1: Year in Review
      • See your [X] reading days come together in Year in Review
      • X is replaced with number of cumulative unique reading days (reading day = a day that has at least one article in history)
    • Slide 2: Saved
      • Sync your [X] saved articles
      • X is replaced with current number of saved articles
    • Slide 3: Activity
      • Revisit your [X] recent reads with Activity
      • X is replaced with articles read this month from Activity
Target audiences
  • Logged out casual users of the App
  • For translations and testing: German, Japanese, Arabic
How we'll measure success

Key Results

  • KR 1.1: Increase in overall new accounts: 20% increase in newly created reader accounts compared to baseline in previous year
  • KR 1.2: Prompt conversion: At least 1% of logged-out users who see the prompt successfully create an account [Baseline: 1.2% of android impressions of reading challenge announcement created an account]

Guardrails

  • GR: 2.1: At least 40% account creation success rate

Considerations

  • What share of account creations were blocked due to reasons outside of their control? (for example, IP block, email address not confirmed)
  • What share of new installs saw the prompt within their first 30 days of having the app? What share of new accounts created during the experiment period were new installs from app marketing?
  • What share of all new accounts came through the prompt for the variant?
Designs

Designs: https://www.figma.com/design/kYz51yKoqFpBbU5LSNR8mq/YIR-2026?node-id=1353-23419&t=RtvDIrOv1Uwhp0Gi-4

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes
HNordeenWMF updated the task description. (Show Details)
HNordeenWMF updated the task description. (Show Details)
HNordeenWMF updated the task description. (Show Details)
Mazevedo renamed this task from [DE 3.3] Evergreen account creation prompt within the Mobile Apps to [XL][DE 3.3] Evergreen account creation prompt within the Mobile Apps.Aug 20 2026, 2:52 PM
HNordeenWMF added subscribers: Mazevedo, Dbrant.

@Mazevedo and @Dbrant please break this XL into subtasks for iOS & Android as children tasks, and let's aim to bring it into the sprint starting August 26

Mazevedo renamed this task from [XL][DE 3.3] Evergreen account creation prompt within the Mobile Apps to [DE 3.3] Evergreen account creation prompt within the Mobile Apps.Aug 25 2026, 12:07 PM
Seddon renamed this task from [DE 3.3] Evergreen account creation prompt within the Mobile Apps to [DE 3.3.2 Epic] Evergreen account creation prompt within the Mobile Apps.Aug 26 2026, 4:19 PM
Seddon changed the point value for this task from 13 to 0.

Noting here these accounts created will be tracked in product_metrics_app_base where instrument: apps-authentication
using value action_context: invoke_source: = encourage

Available in: TestFlight Wikipedia Experimental 2026.09.03 (1866)

Mazevedo added a subscriber: SChekfa-WMF.

@SChekfa-WMF you can test using the build above - it's not locked on portrait yet. You should be able to see it every time you open the app or any article

@ABorbaWMF QA suggested test notes

Note: don't use any experimental build for the test

Caution: Move the date forward only. If you move the date backward, the app counts the days incorrectly.

Use a device.
On the device, open Settings. Select General. Select Date & Time.
Set Set Automatically to off.
Move the date forward in days.

Test 1: An install from before this change

Install the TestFlight version of the app.
Read three articles.
Set the date forward 8 days.
Open the TestFlight version. Read one article.
Set the date forward 1 more day.
Install the new version of the app.
Open the app.
The prompt shows immediately. You do not wait.

Test 2: A new install

Install the app.
Read three articles. Save one article.
Result: The prompt does not show.
Set the date to day 8.
Open the app.
Result: The prompt does not show. This result is correct. The app does not count today on the same day.
Set the date to day 9.
Open the app.
The prompt shows on the Explore tab.
Read the four slides.
Each slide shows your own numbers. For example, See your 3 reading days come together in Year in Review.
A slide with the number 1 uses the singular word. For example, 1 saved article.
A slide with no data shows no number.

Available in: TestFlight Wikipedia Experimental 2026.09.04 (1867)

@ABorbaWMF we are going to hide this feature from this release on iOS. Can you check in with @GOlson-WMF before testing? They can verify if it's been unhidden. Thanks!

Available in: TestFlight Wikipedia Experimental 2026.09.08 (1868)

See @Mazevedo 's notes above for testing - does not have lock in portrait on this experimental build yet, but will shortly when I get to review it

@ABorbaWMF you should be able to test this on alphas/1868!

Android: Signed off

Eligibility & Display

  • ✅ Only shown to logged-out users who are "account-ready"
  • A user qualifies as "account-ready" when they meet the following requirements:
    • ✅ Opens the app during first 7 days (App open tracking can be proxied by an impression of either Article view or one of the Main tabs of the app)
    • ✅ Opens the app again during a consecutive 2nd 7 days (App open tracking can be proxied by an impression of either Article view or one of the Main tabs of the app)
  • ✅ The first time a user is identified "account-ready", the prompt is shown starting on their next app open, not on the session where the threshold was crossed
    • Prompt can show within Home, Saved, or Article view when accessed through internal link (suppress on article view when a user is arriving from a Deep link),
    • Show it NOW to all users who already meet the requirements
    • From now on, show it one time to readers as they reach this threshold, indefinitely
  • Prompt should be a lower priority than other existing tooltips/prompts. Do not show this prompt at the same time as another prompt or tooltip. 
  • Initial prompt should only show once per install: once shown and the user ignored or closed, it does not re-show regardless of continued reading behavior. Do not re-show if a user has cleared their reading history and then becomes eligible again.
  • ✅ If a user taps "Maybe later" on the prompt, they can see it 1 more time (once the user has an additional 2 app open days). The maximum impressions is 2. If they tap "Maybe later" on their 2nd impression, the prompt is never shown again.

Prompt format

  • Full-screen prompt presented on app open (once eligible), containing:
    • ✅ Header: Wikipedia is better with an account
    • A carousel of benefit slides with an illustration for each item, user can swipe between items in the carousel
    • ✅ A persistent primary CTA ("Create account" or similar) that stays visible below the carousel across all slides
    • ✅ Persistent secondary CTA for "Maybe later" that shows the prompt again once the user has an additional 2 reading days in their history
    • ✅ Dismissible with X/Done
  • Carousels communicate the current value propositions of having an account in a visual and dynamic way so that even users who don't read the text can understand the benefits
    • ✅ Slide 1: Year in Review
      • See your reading days come together in Year in Review
      • Shown in illustration: Wireframe of Year in Review (Avoid text to keep it universal across languages)
      • Once a year, your reading days come back as a look at where the year took you, ready to share.
      • ✅ X is replaced with number of cumulative unique reading days (reading day = a day that has at least one article in history)
    • ✅ Slide 2: Saved
      • Sync your saved articles
      • Shown in illustration: Wireframe of Saved articles on multiple devices (Avoid text to keep it universal across languages)
      • Log in to your Wikipedia account to allow your saved articles to be synced across devices. 
      • ✅ X is replaced with current number of saved articles
    • ✅ Slide 3: Activity
      • ✅ Revisit your recent reads with Activity
      • Shown in illustration: Wireframe of Activity (Avoid text to keep it universal across languages)
      • ✅ See your reading time, explored topics, and the reach of your contributions in the Activity tab
      • X is replaced with articles read this month from Activity
    • ✅Slide 4: Editing
      • ✅Get credit for your edits
      • Shown in illustration: Wireframe of contributions screen (Avoid text to keep it universal across languages)
      • Build a track record you can be proud of, with contributions across Wikimedia projects credited to your account.
  • Prompt must be accessible with VoiceOver and Talkback, and dynamic type/increased font sizes
  • After user logs in or creates an account through the prompt, land them back where they were when they started
  • After users log-in, ensure syncing reading lists is on by default [Should be existing behavior]

Remove legacy prompts

  • Remove existing log-in prompt for reading list syncing 
Screenshot_20260813-135443 (1).png (1,080×2,400 px, 389 KB)
Screenshot 2026-08-12 at 9.02.00 AM (3).png (1,179×2,556 px, 1 MB)

@GOlson-WMF could you confirm that on iOS there is logic to suppress this prompt from showing on Article view to users who arrive at the app from a deep link?

Builds: Started with 1864-alpha-2026-09-01 and updated to 1868-alpha-2026-09-08
Tested on:
iPhone 16, iOS 26.6
iPad Air, iPadOS 26.6
iPhone SE, iOS 26.5.2

Test 1 as defined above

Requirement✅❓❌Notes
Eligibility & Display
Only shown to logged-out users who are "account-ready"✅Works as expected
A user qualifies as "account-ready" when they meet the following requirements:
Opens the app during first 7 days (App open tracking can be proxied by an impression of either Article view or one of the Main tabs of the app)✅Works as expected
Opens the app again during a consecutive 2nd 7 days (App open tracking can be proxied by an impression of either Article view or one of the Main tabs of the app)✅Works as expected
The first time a user is identified "account-ready", the prompt is shown starting on their next app open, not on the session where the threshold was crossed✅Works as expected
Prompt can show within Home, Saved, or Article view when accessed through internal link (suppress on article view when a user is arriving from a Deep link)✅Works as expected
Show it NOW to all users who already meet the requirements✅Works as expected
From now on, show it one time to readers as they reach this threshold, indefinitely✅Works as expected
Prompt should be a lower priority than other existing tooltips/prompts. Do not show this prompt at the same time as another prompt or tooltip.✅Works as expected
Initial prompt should only show once per install: once shown and the user ignored or closed, it does not re-show regardless of continued reading behavior. Do not re-show if a user has cleared their reading history and then becomes eligible again.✅Works as expected
If a user taps "Maybe later" on the prompt, they can see it 1 more time (once the user has an additional 2 app open days). The maximum impressions is 2. If they tap "Maybe later" on their 2nd impression, the prompt is never shown again.❌I did not see a second prompt after seeing the 1st prompt, tapping maybe later, then manually setting the date 2 days ahead, and returning to the app
Prompt format - Full-screen prompt presented on app open (once eligible), containing:
Header: Wikipedia is better with an account✅Works as expected
A carousel of benefit slides with an illustration for each item, user can swipe between items in the carousel✅Works as expected
A persistent primary CTA ("Create account" or similar) that stays visible below the carousel across all slides✅Works as expected
Persistent secondary CTA for "Maybe later" that shows the prompt again once the user has an additional 2 reading days in their history
Dismissible with X/Done❓Difficult to tap maybe later on smaller screens, does not scroll. Maybe related to dynamic text set to larger than default (see screenshot below)
Carousels communicate the current value propositions of having an account in a visual and dynamic way so that even users who don't read the text can understand the benefits✅Works as expected
Slide 1: Year in Review✅Works as expected
See your reading days come together in Year in Review✅Works as expected
Shown in illustration: Wireframe of Year in Review (Avoid text to keep it universal across languages)✅Works as expected
Once a year, your reading days come back as a look at where the year took you, ready to share.✅Works as expected
X is replaced with number of cumulative unique reading days (reading day = a day that has at least one article in history)✅Works as expected
Slide 2: Saved✅Works as expected
Sync your saved articles✅Works as expected
Shown in illustration: Wireframe of Saved articles on multiple devices (Avoid text to keep it universal across languages)✅Works as expected
Log in to your Wikipedia account to allow your saved articles to be synced across devices.✅Works as expected
X is replaced with current number of saved articles✅Works as expected
Slide 3: Activity✅Works as expected
Revisit your recent reads with Activity✅Works as expected
Shown in illustration: Wireframe of Activity (Avoid text to keep it universal across languages)✅Works as expected
See your reading time, explored topics, and the reach of your contributions in the Activity tab✅Works as expected
X is replaced with articles read this month from Activity✅Works as expected
Slide 4: Editing✅Works as expected
Get credit for your edits✅Works as expected
Shown in illustration: Wireframe of contributions screen (Avoid text to keep it universal across languages)✅Works as expected
Build a track record you can be proud of, with contributions across Wikimedia projects credited to your account.✅Works as expected
Prompt must be accessible with VoiceOver and Talkback, and dynamic type/increased font sizes✅Works as expected
After user logs in or creates an account through the prompt, land them back where they were when they started❓I was unable to see the evergeen account creation prompts on Test.wiki, but I was able to login to existing accounts
After users log-in, ensure syncing reading lists is on by default [Should be existing behavior]✅Works as expected
Remove legacy prompts✅Works as expected
Remove existing log-in prompt for reading list syncing✅Works as expected

iPhone SE Screenshot. Screen does not scroll

Capture d’écran 2026-09-18 à 11.36.14 AM.png (750×1,334 px, 151 KB)

Builds: Started with 1864-alpha-2026-09-01 and updated to 1868-alpha-2026-09-08
Tested on:
iPhone 16, iOS 26.6
iPad Air, iPadOS 26.6
iPhone SE, iOS 26.5.2

Test 2 as defined above

Requirement✅❓❌Notes
Eligibility & Display
Only shown to logged-out users who are "account-ready"✅Works as expected
A user qualifies as "account-ready" when they meet the following requirements:
Opens the app during first 7 days (App open tracking can be proxied by an impression of either Article view or one of the Main tabs of the app)✅Works as expected
Opens the app again during a consecutive 2nd 7 days (App open tracking can be proxied by an impression of either Article view or one of the Main tabs of the app)✅Works as expected
The first time a user is identified "account-ready", the prompt is shown starting on their next app open, not on the session where the threshold was crossed✅Works as expected
Prompt can show within Home, Saved, or Article view when accessed through internal link (suppress on article view when a user is arriving from a Deep link)✅Works as expected
Show it NOW to all users who already meet the requirements✅Works as expected
From now on, show it one time to readers as they reach this threshold, indefinitely✅Works as expected
Prompt should be a lower priority than other existing tooltips/prompts. Do not show this prompt at the same time as another prompt or tooltip.✅Works as expected
Initial prompt should only show once per install: once shown and the user ignored or closed, it does not re-show regardless of continued reading behavior. Do not re-show if a user has cleared their reading history and then becomes eligible again.✅Works as expected
If a user taps "Maybe later" on the prompt, they can see it 1 more time (once the user has an additional 2 app open days). The maximum impressions is 2. If they tap "Maybe later" on their 2nd impression, the prompt is never shown again.❌I did not see a second prompt after seeing the 1st prompt, tapping maybe later, then manually setting the date 2 days ahead, and returning to the app
Prompt format - Full-screen prompt presented on app open (once eligible), containing:
Header: Wikipedia is better with an account✅Works as expected
A carousel of benefit slides with an illustration for each item, user can swipe between items in the carousel✅Works as expected
A persistent primary CTA ("Create account" or similar) that stays visible below the carousel across all slides✅Works as expected
Persistent secondary CTA for "Maybe later" that shows the prompt again once the user has an additional 2 reading days in their history
Dismissible with X/Done❓Difficult to tap maybe later on smaller screens, does not scroll. May be related to dynamic text being set to larger than default (see screenshot below)
Carousels communicate the current value propositions of having an account in a visual and dynamic way so that even users who don't read the text can understand the benefits✅Works as expected
Slide 1: Year in Review✅Works as expected
See your reading days come together in Year in Review✅Works as expected
Shown in illustration: Wireframe of Year in Review (Avoid text to keep it universal across languages)✅Works as expected
Once a year, your reading days come back as a look at where the year took you, ready to share.✅Works as expected
X is replaced with number of cumulative unique reading days (reading day = a day that has at least one article in history)✅Works as expected
Slide 2: Saved✅Works as expected
Sync your saved articles✅Works as expected
Shown in illustration: Wireframe of Saved articles on multiple devices (Avoid text to keep it universal across languages)✅Works as expected
Log in to your Wikipedia account to allow your saved articles to be synced across devices.✅Works as expected
X is replaced with current number of saved articles✅Works as expected
Slide 3: Activity✅Works as expected
Revisit your recent reads with Activity✅Works as expected
Shown in illustration: Wireframe of Activity (Avoid text to keep it universal across languages)✅Works as expected
See your reading time, explored topics, and the reach of your contributions in the Activity tab✅Works as expected
X is replaced with articles read this month from Activity✅Works as expected
Slide 4: Editing✅Works as expected
Get credit for your edits✅Works as expected
Shown in illustration: Wireframe of contributions screen (Avoid text to keep it universal across languages)✅Works as expected
Build a track record you can be proud of, with contributions across Wikimedia projects credited to your account.✅Works as expected
Prompt must be accessible with VoiceOver and Talkback, and dynamic type/increased font sizes✅Works as expected
After user logs in or creates an account through the prompt, land them back where they were when they started❓I was unable to see the evergeen account creation prompts on Test.wiki, but I was able to login to existing accounts
After users log-in, ensure syncing reading lists is on by default [Should be existing behavior]✅Works as expected
Remove legacy prompts✅Works as expected
Remove existing log-in prompt for reading list syncing✅Works as expected

iPhone SE Screenshot. Screen does not scroll

Capture d’écran 2026-09-18 à 11.36.14 AM.png (750×1,334 px, 151 KB)

Available in: TestFlight Wikipedia 2026.09.10 (6171)

Signed off! I was able to trigger it a second time after tapping 'Maybe later'