Assume you have n users and know that n grows by a fixed number of users c per day and viral growth rate of k per day, where k is expressed as a percentage of n.
How can you tell how many days it will take for the userbase to grow to size x, where x > n?
This is a compound interest problem, but I don’t know how to do it with the addition of the constant factor c.
Assuming you don’t mind fractional users… If k is expressed as a decimal (so a growth rate of 5% is k=1.05), then the formula is:
For instance, suppose your initial userbase is 5; you grow constantly by 3 users per day, and virally by 5% per day; and your target is 35 users. Then
Running the process in Excel, you can see that, indeed, day 7 gives you 31.5 users, and day 8 36 users.
Derivation:
Denote the number of users after d days as n_d. Then:
n1 = kn + c
n2 = kn1 + c = k( kn + c) + c = k2n + (k + 1)c
n3 = kn2 + c = k( k2n + (k + 1)c) + c = k3n + (k2 + k + 1)c
…
nd = kdn + SUMi=0,d-1(kic)
Now, the SUM is a geometric series. The sum of that geometric series is easily derivable (or found on Wikipedia!) to be c(1 – kd)/(1 – k).
So:
nd = kdn + c(1 – kd)/(1 – k)
= kdn + c/(1 – k) – ckd/(1 – k)
= kd( n – c/(1 – k)) + c/(1 – k)
So
kd = (nd – c/(1 – k)) / (n – c/(1 – k))
= ((1 – k) nd – c) / ((1 – k) n – c)
So
d = logk(((1 – k) nd – c) / ((1 – k) n – c))