Here's a different approach:

We denote time by t with units, say, days.

The number of customers at time t is the (real
valued function of a real variable) y(t).

We assume that at the present t = 0 and that we have
y(0), that is, the current number of customers.

We let the number of customers who will ever try our
business be b. That is, b is our intended 'market
potential'.

Initially we assume that once we get a person as a
customer, we do not ever lose them but keep them
forever.

As usual, we let y'(t) = dy(t)/dt be the calculus
first derivative of y(t). Then y'(t) is number of
new customers per day, that is, the 'rate' at which
we gain customers.

For 'virality' we notice that that is proportional
to (1) the number of customers y(t) we have
'talking' about our business and (2) the number of
people

b - y(t)

yet to be our our customers hearing the talking.

Then we have that for some constant of
proportionality k

y'(t) = k y(t) (b - y(t))

So we have an initial value problem (that is, we
know y(0)) for a first order (we use only the first
derivative) ordinary (no partial derivatives)
differential equation.

Then from calculus,

y(t) = y(0) b exp(bkt) /
( y(0)( exp(bkt) - 1) + b))

So this solution grows (1) initially slowly, (2)
then more rapidly, (3) then more slowly and
approaches b asymptotically from below.

In case we lose some customers forever at some rate
r, then we get the same solution except k and b get
adjusted.

Once there was a startup (now a major company) that
was struggling and had as an investor a major
company with a Board seat and at the startup two
representatives, one in finance and the other in
aeronautical engineering.

The two representatives had asked for some revenue
growth projections.

People around the HQ considered what the startup
hoped, intended, thought might happen, etc., but
found nothing credible.

One guy who remembered calculus reluctantly got
involved, formulated and solved the differential
equation above, and showed the solution to a Senior
VP of Planning (SVP) who reported to the founder,
CEO, COB. The SVP was responsible for the
projections. The SVP took the guy's calculus
solution as the basis of the projections and on a
Friday sat with the guy with a pocket calculator and
some graph paper and graphed solutions to the
differential equation for selected values of the
constant k and picked one of the solutions as the
official projection.

The next day, Saturday, at about noon, the guy was
in his office working on some other math problems
and got a call from a person asking if he knew about
the projections for the Board and if he could come
over to the HQ? Sure. When the guy arrived, the
situation was grim: The two representatives of the
major Board Member were standing in the hall with
their bags packed with airline tickets back to
Texas. The startup was about to die.

The SVP was traveling and out of town.

The person who had called got the graph of
projections from the previous day and asked the guy
to reproduce a point on the graph. Using the
calculator, the solution above, and a few
keystrokes, the point on the graph was reproduced.
After several more points were reproduced, the area
became happier; the two representatives on the
Board stayed, and the startup was saved.

Later the person who had called explained that that
Saturday was a Board meeting, the growth projection
graph was shown, and the two representatives had
asked how the projections were calculated. The rest
of the company tried to reproduce the graph but
could not. The Board meeting stopped. The two
representatives lost patience with the startup, got
airline tickets back to Texas, returned to their
rented rooms, packed their bags, and as a last
chance returned to the startup to see if there was
an answer to how the projections were calculated.

Ah, one saved startup! One reason to take calculus
seriously!