---
schema: 1
type: video
title: He Spent $1M on A/B Tests. Here's What Won.
description: >-
  In this episode, Moonly's founder Vitaliy Urban shares every experiment that
  won — and every one that failed. Moonly bootstrapped to $20M in revenue.
  Today, it has 10M users, and 40% of the people who install it from an ad end
  up paying. That took hundreds of experiments a month, for six years, at a cost
  of over $1M. And most of what won goes against the advice we've all been
  repeating. ───────────────────── About our guest ───────────────────── Vitaliy
  Urban is the founder of Moonly, an astrology app he bootstrapped to $20M in
  revenue with no investors. Over 6 years, he's run thousands of A/B tests on
  onboarding, paywalls and pricing. Today, Moonly has 10M users. Before Moonly,
  he built 5 B2C companies, including Soul, an AI therapist he launched in 2023,
  three years before the category existed. Moonly:
  https://apps.apple.com/us/app/moonly-moon-phases-calendar/id1489889871 Moonly
  on Mobbin:
  https://mobbin.com/apps/moonly-ios-6e065143-033e-42d4-97a0-dfbcb795e32e/9b979db9-170f-40cc-ac80-627c18acbf39/screens
  ───────────────────── Discover real-world design inspiration on Mobbin.com
  ───────────────────── Featuring over 600,000 screens, 322,000 flows, and 1,000
  apps, Mobbin is the world's largest UI & UX reference library of fully
  searchable mobile & web screenshots. https://www.instagram.com/mobbindesign
  https://x.com/mobbin Mobbin Magazine: https://mobbin.com/blog
  ───────────────────── Chapters ───────────────────── 00:00 He spent $1M on A/B
  tests 00:27 "Keep your onboarding short" 01:27 How they designed their
  attribution engine 02:15 How they personalize the first session 03:03 "Get
  featured by Apple" 03:45 "You need login" 05:17 "Use contextual paywalls"
  08:53 "Price based on value" 10:14 "Give users a free trial" 11:12 4 things
  that worked well for them 11:37 This moved the needle most 12:13 Add-ons 13:07
  Alternative billing 14:05 Managing A/B tests at scale 14:36 Advice for app
  founders
canonical: >-
  https://liquidgold.cc/channel/mobbindesign/explore/video/he-spent-1m-on-a-b-tests-here-s-what-won-d6b4a57475a2
markdown: >-
  https://liquidgold.cc/channel/mobbindesign/video/he-spent-1m-on-a-b-tests-here-s-what-won-d6b4a57475a2.md
llms: null
parent: 'https://liquidgold.cc/channel/mobbindesign.md'
channel: mobbindesign
updated: '2026-10-24T17:33:02.745Z'
language: null
children:
  - >-
    https://liquidgold.cc/channel/mobbindesign/topic/onboarding-flow-design-ngflowdesign.md
  - >-
    https://liquidgold.cc/channel/mobbindesign/topic/paywall-design-and-conversion-patterns-gnconversion.md
  - >-
    https://liquidgold.cc/channel/mobbindesign/topic/pricing-and-paywall-experimentation-lexperiments.md
videoId: qK7WYCMvjUw
durationSeconds: 960
publishedAt: '2026-09-09T13:17:17.000Z'
searchChunks:
  - ordinal: 0
    text: null
    startSeconds: 0
    endSeconds: 11
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=0'
    heldReason: rights
  - ordinal: 1
    text: null
    startSeconds: 11
    endSeconds: 34
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=11'
    heldReason: rights
  - ordinal: 2
    text: null
    startSeconds: 34
    endSeconds: 46
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=34'
    heldReason: rights
  - ordinal: 3
    text: null
    startSeconds: 46
    endSeconds: 91
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=46'
    heldReason: rights
  - ordinal: 4
    text: null
    startSeconds: 46
    endSeconds: 91
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=46'
    heldReason: rights
  - ordinal: 5
    text: null
    startSeconds: 91
    endSeconds: 103
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=91'
    heldReason: rights
  - ordinal: 6
    text: null
    startSeconds: 103
    endSeconds: 137
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=103'
    heldReason: rights
  - ordinal: 7
    text: null
    startSeconds: 103
    endSeconds: 137
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=103'
    heldReason: rights
  - ordinal: 8
    text: null
    startSeconds: 148
    endSeconds: 183
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=148'
    heldReason: rights
  - ordinal: 9
    text: null
    startSeconds: 183
    endSeconds: 195
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=183'
    heldReason: rights
  - ordinal: 10
    text: null
    startSeconds: 237
    endSeconds: 323
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=237'
    heldReason: rights
  - ordinal: 11
    text: null
    startSeconds: 334
    endSeconds: 538
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=334'
    heldReason: rights
  - ordinal: 12
    text: null
    startSeconds: 334
    endSeconds: 538
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=334'
    heldReason: rights
  - ordinal: 13
    text: null
    startSeconds: 334
    endSeconds: 538
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=334'
    heldReason: rights
  - ordinal: 14
    text: null
    startSeconds: 549
    endSeconds: 618
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=549'
    heldReason: rights
  - ordinal: 15
    text: null
    startSeconds: 549
    endSeconds: 618
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=549'
    heldReason: rights
  - ordinal: 16
    text: null
    startSeconds: 629
    endSeconds: 677
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=629'
    heldReason: rights
  - ordinal: 17
    text: null
    startSeconds: 677
    endSeconds: 689
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=677'
    heldReason: rights
  - ordinal: 18
    text: null
    startSeconds: 699
    endSeconds: 711
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=699'
    heldReason: rights
  - ordinal: 19
    text: null
    startSeconds: 735
    endSeconds: 747
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=735'
    heldReason: rights
  - ordinal: 20
    text: null
    startSeconds: 801
    endSeconds: 845
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=801'
    heldReason: rights
  - ordinal: 21
    text: null
    startSeconds: 856
    endSeconds: 877
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=856'
    heldReason: rights
  - ordinal: 22
    text: null
    startSeconds: 888
    endSeconds: 960
    watch: 'https://liquidgold.cc/watch/qK7WYCMvjUw?t=888'
    heldReason: rights
---


# He Spent $1M on A/B Tests. Here's What Won.

In this episode, Moonly's founder Vitaliy Urban shares every experiment that won — and every one that failed. Moonly bootstrapped to $20M in revenue. Today, it has 10M users, and 40% of the people who install it from an ad end up paying. That took hundreds of experiments a month, for six years, at a cost of over $1M. And most of what won goes against the advice we've all been repeating. ───────────────────── About our guest ───────────────────── Vitaliy Urban is the founder of Moonly, an astrology app he bootstrapped to $20M in revenue with no investors. Over 6 years, he's run thousands of A/B tests on onboarding, paywalls and pricing. Today, Moonly has 10M users. Before Moonly, he built 5 B2C companies, including Soul, an AI therapist he launched in 2023, three years before the category existed. Moonly: https://apps.apple.com/us/app/moonly-moon-phases-calendar/id1489889871 Moonly on Mobbin: https://mobbin.com/apps/moonly-ios-6e065143-033e-42d4-97a0-dfbcb795e32e/9b979db9-170f-40cc-ac80-627c18acbf39/screens ───────────────────── Discover real-world design inspiration on Mobbin.com ───────────────────── Featuring over 600,000 screens, 322,000 flows, and 1,000 apps, Mobbin is the world's largest UI & UX reference library of fully searchable mobile & web screenshots. https://www.instagram.com/mobbindesign https://x.com/mobbin Mobbin Magazine: https://mobbin.com/blog ───────────────────── Chapters ───────────────────── 00:00 He spent $1M on A/B tests 00:27 "Keep your onboarding short" 01:27 How they designed their attribution engine 02:15 How they personalize the first session 03:03 "Get featured by Apple" 03:45 "You need login" 05:17 "Use contextual paywalls" 08:53 "Price based on value" 10:14 "Give users a free trial" 11:12 4 things that worked well for them 11:37 This moved the needle most 12:13 Add-ons 13:07 Alternative billing 14:05 Managing A/B tests at scale 14:36 Advice for app founders

Canonical: https://liquidgold.cc/channel/mobbindesign/explore/video/he-spent-1m-on-a-b-tests-here-s-what-won-d6b4a57475a2 · Channel: [Mobbin](https://liquidgold.cc/channel/mobbindesign.md)

## Related topics

- [Onboarding Flow Design](https://liquidgold.cc/channel/mobbindesign/topic/onboarding-flow-design-ngflowdesign.md)
- [Paywall Design and Conversion Patterns](https://liquidgold.cc/channel/mobbindesign/topic/paywall-design-and-conversion-patterns-gnconversion.md)
- [Pricing and Paywall Experimentation](https://liquidgold.cc/channel/mobbindesign/topic/pricing-and-paywall-experimentation-lexperiments.md)

> Search chunk text is held until public-source provenance is verified.

## Document chunks

> Missing: no stored document chunks are available.
