# Playbook SW. Software Companies

*The question: How does a software company personalize when its richest signal is how people use the product?*

> **Questions this playbook answers**
> - We are product-led, sales-led, or somewhere in between. What does each motion actually personalize?
> - How do raw product events become something an agent can read and decide on?
> - Our team swears by an activation "magic number." Is it real, and how do we check?
> - Which trials should a salesperson call, which should the product handle, and which should we leave alone?
> - How do we act on low adoption without talking a quiet account into cancelling?

## The moment

*Larkspur Systems is a fictional composite company used throughout this handbook: field-service and fleet software, about 40,000 accounts and 250,000 contacts. Every person and account below is fictional, and all Larkspur figures are illustrative.*

Larkspur sells to mid-market and large fleets through account executives. Alongside that motion, it runs a 14-day free trial, no card required, for fleets under 25 vehicles. About 900 trials start each month. About 5 percent convert to paid within 60 days.

On one Monday, two trials start.

Aisha owns Copperfield Electric, nine vans. She imports 40 jobs on day one, dispatches her first route on day two, and by day four three of her technicians have the mobile app installed. She never opens the help center.

Wes is an IT analyst at Northgate Waste, a 350-truck hauler. He signs up, reads the API documentation twice, opens the integrations page, and invites nobody. He is building a shortlist for a procurement review that his director will run in six weeks.

The trial program treats them identically: the day-three email ("Don't forget to invite your team!") and the day-twelve email ("Your trial ends soon: 20% off if you upgrade today"). The lead score, which runs on company size, flags Northgate, and an SDR calls Wes about routing pain he does not have. His integration question goes unanswered, and the shortlist is drafted without Larkspur. Aisha upgrades on day eleven and takes a 20 percent discount she would not have missed.

Meanwhile, Pinecrest Landscaping, a paying account, uses 23 of the 80 seats it bought, with renewal five months out. Nobody has noticed.

Larkspur had watched every click. It had remembered none of them in a form anyone could act on.

## The decision

A software company's decisions follow the lifecycle: **activate** (reach first value), **convert** (free to paid), **expand** (more seats, usage, products), and **retain** (keep using what was bought). For each person and account, the options are Chapter 14's menu: show something in the product, send something, route to a human, ask one question, wait, or do nothing.

What changes by company is who makes the decision and where it lands. That is the go-to-market motion.

| | Product-led | Hybrid | Sales-led |
|---|---|---|---|
| Unit of personalization | The user, then the workspace | The workspace, then the buying group | The account and its buying group |
| Richest signal | Usage in the first days | Usage plus who the account is | Conversations, contracts, deployment |
| Main surface | In-product and lifecycle email | In-product, plus a human at the right moment | The seller's and CSM's brief |
| Characteristic mistake | Nudging everyone toward one number | Calling the wrong trial | Ignoring usage until renewal |

Product-led growth, a term coined at OpenView around 2016 by Blake Bartlett, names a motion in which the product is "the primary driver of customer acquisition, conversion, and expansion" [1]. Public filings show it working. Slack's 2019 S-1 reported more than 500,000 organizations on its free plan, more than 88,000 paid customers, and adoption "typically initially driven bottoms-up, by end users" [2]. Zoom's said 55 percent of its 344 customers paying more than $100,000 "started with at least one free host" [3]. Atlassian's 2015 F-1 said it had no "traditional, quota-carrying sales personnel" [4].

Most companies end up hybrid: OpenView's 2023 benchmark survey, as summarized by Wing VC (the original is offline), found 47 percent of product-led companies had added sales before $1 million in annual recurring revenue [5]. Larkspur's Monday is the hybrid's typical failure: the product generated the signal, and the sales process ignored it.

Here is the sentence this playbook turns on: **usage is the most honest thing a customer tells you, and the easiest to misread.** It records what people did, never why. Aisha's clicks meant she needed nothing; Wes's meant he was evaluating for someone else and needed a technical answer. The same event stream supported opposite decisions, and the company read neither.

## What you need to know

### Events are not memory until they are typed

A product emits millions of events, and an agent deciding what to do for Northgate should not read them. The step most software companies skip is turning usage into memory, in three forms.

1. **Raw events stay where they are,** in the product database or warehouse. They are the audit trail, not the working record.
2. **Derived, typed properties** land on the user and the account: `first_route_dispatched_at`, `technicians_active_7d`, `seats_paid`, `seats_active_30d`, `integration_docs_viewed`, `trial_day`, `activation_milestone_reached`. By the Boundary Rule in Chapter 10, anything you would filter, count, or trigger on is a property. "Trials on day 5 or later with no dispatched route" is a WHERE clause.
3. **Evidence memories** hold what usage cannot: Wes's reply that the review is about integration with the city's work-order system, or Aisha's note in the in-app survey that her last tool "made me route on paper anyway." Each carries a source and a date (Chapter 11).

Two rules keep this honest. Usage properties are written by code as exact values, never inferred by a model. In the self-hosted memory system I built, structured values are upserted with no extraction step, and an operator can list fields the extractor may never infer, so a model reading a call transcript cannot overwrite a counted value with "probably 20 active users." And each property declares how it changes: `seats_active_30d` replaces, while milestones accumulate with their dates, so "when did this account first reach value?" stays a lookup.

Keep two levels, user and account (Chapter 9). The individual activates; the account buys and renews. Northgate's scoring rule saw only the account, and the SDR saw only the user.

The evidence is real but modest: a 2024 study of 3,959 business-software subscriptions found that usage features improved churn prediction over firmographic, transactional, and support data alone [6]. That says usage belongs in memory, not that any intervention on it works.

![Usage becomes memory before it becomes a decision. Raw product events such as job imported, route dispatched, and API docs viewed stay in the warehouse; code derives typed properties from them as exact values, never inferred, such as first route dispatched at, technicians active in 7 days, and seats active over seats paid. Conversations (calls, replies, surveys) become evidence memories, such as why the user is evaluating, each with a source and date. The decision layer reads both forms and chooses among show in product, send, route to a person, ask one question, wait, or do nothing, and every action and response is written back to memory.](/images/handbook/pb-sw-usage-to-decision.svg)

*Figure SW.1. Events become typed properties and sourced evidence before any agent decides; clicks alone never tell you why.*

### Magic numbers are markers until you test them

Stewart Butterfield told First Round Review in 2015 that after a team had exchanged 2,000 messages, "93% of those customers are still using Slack today" [7]. Facebook's "7 friends in 10 days" is attributed to Chamath Palihapitiya's 2012 growth talk; I could not find a primary transcript [8]. Both are real observations of a threshold that separated retained from churned users. Neither shows that pushing a user across it causes retention. Slack observed; it did not prove.

Benn Stancil, writing at Mode in 2015, argued that the real work is testing whether moving the behavior moves retention [8]. Mixpanel, which sells the analytics used to find these thresholds, now calls magic numbers "an illusion": correlational stories useful for aligning a team [9]. Amplitude's 2025 benchmark of 2,600-plus companies found 69 percent of top-quartile day-7 products were also top performers at three months [10]: vendor data, and a correlation between two measures of retention, not a lever.

So a milestone found this way is a **candidate**. Randomize a nudge toward it against no nudge. If moving the behavior does not move the outcome, you have found a marker of fit, not a cause.

The best experimental evidence I know on early help is not a magic number. In a 2011 field experiment at a public cloud provider, 366 of 2,673 new customers received proactive guidance on basic features; their first-week churn halved and their usage over eight months was 46.57 percent higher, most of all for less experienced customers [11]. Help aimed early at the person who is stuck beats pressure aimed at a number.

### A product-qualified lead is a decision, not a score

Tomasz Tunguz defined the product-qualified lead in January 2013: "potential customers who have used a product and reached pre-defined triggers that signify a strong likelihood to become a paying customer" [12]. OpenView's 2023 survey linked tracking PQLs with a 61 percent higher likelihood of fast growth [5], a correlation that says as much about companies that instrument well as about PQLs.

The trap is Chapter 14's: a likelihood is not a decision. Aisha was the likeliest trial to convert, a Sure Thing, and her discount was pure cost. A useful PQL asks which accounts a human would change the outcome for: high value at stake and a need the product cannot meet alone, such as an integration question, a security review, or a multi-site rollout. Wes was the PQL, and the signal was IT-shaped behavior, not company size.

In the governed personalization engine I built, scoring returns a score, a band, a rationale, a recommended priority, and a suggested approach, and deterministic checks catch contradictions such as a score of 88 labeled "low." The rationale is what lets a seller disagree with the score.

## The action

### Trials: act on the state, not the calendar

Replace the day-3 and day-12 emails with a small decision table, re-evaluated when a trial's state changes:

| Trial state (from memory) | Default decision |
|---|---|
| Activated, self-serving, small team | Stay out of the way. No discount. Offer billing help near the end. |
| Activated, larger fleet or several sites | Route to a person with a brief: what they did, what they declared, what they have not tried |
| Stalled at a known step | Help at that step, in the product; or ask one question |
| Evaluator pattern (docs, API, security pages, no invites) | Offer a technical resource, not a discovery call |
| No meaningful activity | One honestly general note, then silence |

The routed brief is where hybrid companies win or lose. In the engine I built, the seller brief holds an account snapshot, why-now signals, conversation ideas, and a draft opening, and it is rejected if its load-bearing sections come back empty, however "complete" the generation reported. The boundary that matters most: **rep-internal is not customer-facing**. The brief can say "likely evaluating a competitor's API"; the email to Wes cannot.

Whether a discount belongs in the flow is a test, not a habit. Benchmarks need their labels: Poyar and Rachitsky's 2023 survey of 1,000-plus B2B products put good free-trial conversion at 8 to 12 percent within six months [13]; the 2026 report from Poyar with ChartMogul and ProductLed (200 self-selected products) puts it at 4 to 6 percent without a card and 25 to 35 percent with one [14]. The categories differ; do not blend them. And offer design matters too: in a randomized field experiment, adding a second premium version raised sales of the existing one [15].

### Expansion: seats and usage, read both ways

Expansion signals in software are concrete: a seat limit reached, a second site configured, usage nearing a plan boundary. A prompt at the limit is a real-time "show" decision; keep it small and factual (Sales II: Growth and Return covers the account-level motion). For Copperfield, a tenth van is the trigger, and the product already knows.

Consumption pricing tightens the loop both ways. Snowflake reported net revenue retention of 158 percent in its 2020 S-1 and 125 percent for fiscal 2026 (as of January 31, 2026) [16]; customers who expand on usage also optimize on usage. Label benchmarks: the KeyBanc and Sapphire private-SaaS survey put median net retention near 101 percent (October 2024 release) [17], while ICONIQ describes "~110-120%" across its growth-stage set [18]. Slack's 143 percent in its S-1 [2] is an outlier, and definitions differ by company.

One caution belongs on every usage-based nudge. In a wireless-provider field experiment, Ascarza, Iyengar and Schleicher proactively recommended cheaper plans fitted to customers' usage; three-month churn was 10 percent in the treatment group against 6 percent in the control [19]. A genuinely helpful message made customers look at what they paid.

### Low adoption: help first, and beware Sleeping Dogs

The ratio `seats_active_30d / seats_paid` is the most useful retention property most software companies do not store. Low adoption is common: Pendo's 2019 analysis of its customers' products found 80 percent of features "rarely or never used" [20] (vendor data, three-month window).

Acting on it is where the Sleeping Dogs live (Chapter 14). "You're only using 23 of your 80 seats" invites Pinecrest to right-size at renewal, or to review the whole contract; the least happy accounts top the risk score, and contact can crystallize a decision to leave. Help aimed at the reason comes first: which roles never activated, where they stopped, whether the technicians' app was installed. For Pinecrest, an in-product prompt for the administrator to invite the crew leads, and a CSM brief that opens with adoption, not renewal. In a telecom field experiment, proactive service cut churn, but adding a cross-sell to the same contact undermined the effect when customers doubted the motive [21]. Keep adoption free of the sale. The Customer Success playbook covers adoption plays, health scores, and renewals.

### In the product: experiences and notifications

The chapter "Beyond the Message: Generative Experiences" sets out how much of a page, an app, or a notification can be composed per person, and the Product playbook covers stable frames with adaptive slots. Three rules carry most of the weight here. Adapt the slots (empty state, next step, help panel), never the map. Precompute on events so the live request only selects. And treat every in-app notification as a decision: whether, what, when, and through which channel.

Restraint pays. Duolingo's growth team "could not increase the quantity of notifications without strong justification and CEO approval" [22]; within fixed volume, a bandit choosing among templates and penalizing repetition lifted daily active users 0.5 percent and new-user recurring retention 2 percent over a strong baseline [23]. An in-app nudge draws on the same per-person budget as email and the seller's call (One Customer, One Conversation). In my own engine, notification routing is roadmap, not shipped; the design I would pursue decides it from the same memory and rules as every other surface.

### The handoff: one record across product, sales and success

Product, sales, and customer success each own part of the lifecycle, and each has kept its own copy of the customer. The handoff is where value leaks: the seller who calls without knowing what the trial did, the CSM who re-teaches setup the customer finished in the trial, the upgrade banner that appears the week the account executive agreed a price.

The fix is One Customer, One Conversation's: one memory, one ledger of what was said and promised, one set of rules, every surface compiled from the same context. In the engine I built, once a signup provides identity, the same context feeds the score, the seller brief, routing, and follow-up content, so brief and email cannot disagree on facts. Timing can be simple: the memory system I built runs scheduled recurring prompts, so a weekday-morning job can tell each account executive which trials crossed a milestone overnight and which evaluators await an answer. Every touch and response is written back.

A trial is a conversation the customer starts with your product. The handoff decides whether your people join it or start a new one.

![A grid of three go-to-market motions against four decisions: activate, convert, expand, retain. Product-led, where the product acts: help at the stuck step, the product converts with no human, a prompt at the seat limit, in-app adoption help. Hybrid, where the product acts and then a person: activation in the product, high-value trials routed to a person with a brief (highlighted), the usage signal sent to the account owner, adoption help before renewal. Sales-led, where people act with briefs: guided onboarding, the seller's brief, the account plan, the CSM's brief. One shared memory of usage and conversations feeds every cell.](/images/handbook/pb-sw-motion-map.svg)

*Figure SW.2. Every motion personalizes the same four decisions; what differs is who acts on the usage signal.*

## What can go wrong

### Failure story: The Chased Number

Larkspur's analysts found that trials dispatching 25 routes in week one converted about four times as often as the rest. Onboarding was rebuilt around it: a progress bar toward 25, daily emails, a checklist item. Within a month the share of trials reaching 25 nearly tripled, largely because trialists loaded sample routes to fill the bar. Conversion did not move. The 25 routes had marked fleets with real dispatch volume; pushing small fleets through the motion did not give them that volume. A marker had become a target, and stopped measuring (Goodhart's law, in its popular form). The recovery: delete the bar, randomize one nudge toward a real first dispatch against no nudge, and learn that it helped only trials that had imported their own jobs. (Fictional composite.)

A threshold that separates your best customers from the rest describes them. It does not create more of them.

### Governance risks

- **Customer data is not yours in the same way.** In business software, your customers' users generate the telemetry, and your contracts and data-processing terms govern what you may do with it. Check them before usage drives marketing, and prefer uses the customer would expect (Chapter 19). This is not legal advice.
- **Employee monitoring by another name.** Fleet telemetry includes technicians' location and timing. Using it to route jobs is the product; using it in a message about a named technician's pace is surveillance (the Product playbook).
- **One account, many readers.** An administrator can see team activity; a nudge that tells one user what a colleague did has leaked account memory to the wrong person. Scope each surface to its role (Chapter 18).
- **Trial-expiry pressure.** No manufactured countdowns, no hidden auto-renewal, and cancel and downgrade stay outside the adaptive layer (Chapter 18; the FTC's 2022 dark-patterns report catalogues the forms [24]).
- **Inferred reasons quoted as facts.** "Evaluating a competitor" is a hypothesis for the seller, never a sentence to the buyer.

### What this does not do

Usage does not tell you why. It will not fix a product that fits no one, and it cannot tell an evaluator from a buyer without evidence from outside the event stream. The evidence base is thin in places: controlled public evidence that in-app guides or personalized onboarding lift conversion is scarce, mostly vendor case studies without a published method. Activation benchmarks come from analytics vendors' own customers, skewed toward teams that instrument and grow. I found no live primary source comparing net retention across product-led and sales-led companies; the quoted comparisons trace to an OpenView dataset now offline. And the magic-number genre deserves the skepticism its own vendors now apply to it.

## How you will know

**Define every rate with its window and cohort.** Trial-to-paid within 60 days, by signup month; activation as the tested milestone within seven days; time to value as hours to first dispatched route; seat adoption as active over paid in 30 days; net retention with its definition beside it.

**Randomize at the account, not the user,** since people in one workspace influence each other (Chapter 21). Test the discount with a no-discount arm among activated trials. Test PQL routing by leaving a random share of qualifying trials to the product alone, comparing conversion and first-year value. Test adoption outreach against a no-contact holdout and watch churn among the contacted: that is how Sleeping Dogs appear.

**Do the power arithmetic first.** From a 5 percent baseline, detecting a rise to 6 percent at 80 percent power and 5 percent significance needs about 8,100 trials per group: about 18 months at 900 trials a month split evenly. Activation reads faster (30 to 33 percent needs about 3,800 per group, roughly eight months), but use it as a leading indicator only once it predicts conversion in your own data, and label earlier decisions as judgment.

**Log what each account saw and why.** The decision trace (Chapter 21) lets support reproduce an odd prompt and shows the team which "personalization" is really a bad default for everyone.

## Reader Q&A

**We are purely sales-led with a few users per account. Does usage still matter?**
More than you think, and later than you think. The usage signal arrives after the sale, as deployment and adoption, and it belongs in the CSM's and account manager's briefs. Store it the same way.

**Should sales see every product-qualified lead?**
No. Sales should see the trials where a person changes the outcome and the value justifies the cost of their time. Everyone else is better served by a product that helps them and a silence that respects them.

**We already have a magic number. Should we drop it?**
Keep it as a shared description of healthy use. Before you build onboarding around it, run one randomized nudge toward it and see whether retention follows.

## For your AI

```yaml
playbook: SW
title: Software Companies
question: "How does a software company personalize when its richest signal is how people use the product?"
concepts:
  - name: Usage as Memory
    definition: "Raw product events stay in the warehouse; code derives typed properties on the user and account; evidence memories hold the why, with source and date."
  - name: Candidate Milestone
    definition: "An activation threshold found by correlation; treated as a hypothesis until a randomized nudge toward it shows it moves retention or conversion."
  - name: Decision-Grade PQL
    definition: "A product-qualified lead defined by where a human changes the outcome and the value justifies it, not by conversion likelihood alone."
  - name: Motion Map
    definition: "Product-led, hybrid and sales-led companies personalize the same four decisions (activate, convert, expand, retain); they differ in who acts on usage and where."
  - name: Seat Adoption Ratio
    definition: "Active seats over paid seats in a recent window; the most useful retention property most software companies do not store."
decision_rules:
  - if: "a value is counted or derived from product events"
    then: "write it as an exact typed property from code; never let a model infer or overwrite it"
  - if: "a trial is activated, self-serving, and small"
    then: "do not route to sales and do not discount by default; test any discount against a no-discount arm"
  - if: "a trial shows an evaluator pattern (docs, API, security pages, no invites)"
    then: "offer a technical resource and route to a technical person, not a discovery call"
  - if: "an activation threshold is proposed as a target"
    then: "randomize a nudge toward it against no nudge before building onboarding around it"
  - if: "an account has low seat adoption"
    then: "lead with role-specific adoption help; keep sales offers out of the same contact; hold out a no-contact group and watch churn among the contacted"
  - if: "a message recommends a cheaper plan or smaller commitment"
    then: "treat it as a churn-risk action; decide per account and measure against a holdout"
  - if: "an in-app prompt or notification is proposed"
    then: "decide whether, what, when and which channel; count it against the per-person budget shared with email and sellers"
  - if: "a trial or account moves from product to sales or customer success"
    then: "hand over the shared record: what they did, what they declared, what was offered and said; keep rep-internal hypotheses out of customer copy"
assessment_questions:
  - "Is your motion product-led, sales-led or hybrid, and who acts on usage signals today?"
  - "Which product events are stored as typed properties on users and accounts, and which only live in the warehouse?"
  - "What is your activation milestone, and has a randomized test shown that moving it moves conversion or retention?"
  - "How is a PQL defined, and does a holdout show that routing it to sales changes the outcome?"
  - "Do you store seats active over seats paid, and what happens when it falls?"
  - "Do in-app prompts share a contact budget and a ledger with email and sellers?"
  - "What do your contracts and data-processing terms allow you to do with customer usage data?"
patterns: [Usage as Memory, Candidate Milestone Test, Decision-Grade PQL, State-Based Trial Flow, Adoption Before Renewal, Precompute-then-serve, Stable Frame Variable Parts, Propose Do Not Send]
anti_patterns: [The Chased Number, The Discount for the Converted, Size-Scored PQL, Usage Nudge That Invites Downsizing, The Blind Handoff, The Fatigue Spiral]
metrics: [trial-to-paid within window by cohort, tested activation rate, time to first value, seats active over paid, net revenue retention with definition, churn among contacted versus holdout]
links: {identity: 9, memory: 10, freshness: 11, decision_layer: 14, generation: 15, latency: 17, governance: 18, privacy: 19, measurement: 21, generative_experiences: 16, playbooks: [PR, S2, P9, CS]}
maturity_dimension: decisioning
```

## References

1. Bartlett, B. (OpenView), on coining product-led growth; original post (https://openviewpartners.com/blog/inventing-product-led-growth/) offline; definition confirmed via Sacra interview. https://sacra.com/research/blake-bartlett-openview-future-product-led-growth/
2. Slack Technologies, Inc. Form S-1, filed 2019-04-26 (figures as of 2019-01-31). https://www.sec.gov/Archives/edgar/data/1764925/000162828019004786/slacks-1.htm
3. Zoom Video Communications, Inc. Form S-1, filed 2019-03-22. https://www.sec.gov/Archives/edgar/data/1585521/000119312519083351/d642624ds1.htm
4. Atlassian Corporation Plc. Form F-1, filed 2015-11-09. https://www.sec.gov/Archives/edgar/data/0001650372/000104746915008450/a2226437zf-1.htm
5. Wing VC. "OpenView's 2023 Product Benchmarks Report" (summary of OpenView and Pendo survey, ~1,000 companies; original offline). https://www.wing.vc/content/openviews-2023-product-benchmarks-report
6. Sanchez Ramirez, J., Coussement, K., De Caigny, A., et al. (2024). "Incorporating usage data for B2B churn prediction modeling." *Industrial Marketing Management*. https://www.sciencedirect.com/science/article/abs/pii/S0019850124000865
7. First Round Review (2015-02-27). "From 0 to $1B: Slack's Founder Shares Their Epic Launch Strategy." https://review.firstround.com/from-0-to-1b-slacks-founder-shares-their-epic-launch-strategy/
8. Stancil, B. (2015-01-30). "Facebook's 'Aha' Moment Was Simpler Than You Think." Mode. https://mode.com/blog/facebook-aha-moment-simpler-than-you-think/ (the "7 friends in 10 days" figure is attributed to Chamath Palihapitiya, Growth Hackers Conference, 2012; no primary transcript verified)
9. Mixpanel. "Magic numbers are an illusion." (vendor; page dated 2026-06-02) https://mixpanel.com/blog/magic-numbers-are-an-illusion/
10. Amplitude (2025-09-30). "The 7% Retention Rule Explained" (2025 Product Benchmark Report; vendor data, 2,600+ companies). https://amplitude.com/blog/7-percent-retention-rule
11. Retana, G. F., Forman, C., and Wu, D. J. (2016). "Proactive Customer Education, Customer Retention, and Demand for Technology Support: Evidence from a Field Experiment." *Manufacturing & Service Operations Management* 18(1), 34 to 50. DOI 10.1287/msom.2015.0547. https://ideas.repec.org/a/inm/ormsom/v18y2016i1p34-50.html
12. Tunguz, T. (2013-01-15). "The product qualified lead (PQL)." https://tomtunguz.com/the-new-sales-hotness-the-product-qualified-lead-pql/
13. Poyar, K., and Rachitsky, L. (2023-08-01). "What is a good free-to-paid conversion rate." Lenny's Newsletter. https://www.lennysnewsletter.com/p/what-is-a-good-free-to-paid-conversion
14. Poyar, K., with ChartMogul and ProductLed (2026-02-04). "The 2026 free-to-paid conversion report." Growth Unhinged. https://www.growthunhinged.com/p/free-to-paid-conversion-report
15. Gu, X., Kannan, P. K., and Ma, L. (2018). "Selling the Premium in Freemium." *Journal of Marketing* 82(6), 10 to 27. DOI 10.1177/0022242918807170
16. Snowflake Inc. Form S-1 (2020), NRR as of 2020-07-31. https://www.sec.gov/Archives/edgar/data/1640147/000162828020013010/snowflakes-1.htm ; FY2026 results release. https://www.snowflake.com/en/news/press-releases/snowflake-reports-financial-results-for-the-fourth-quarter-and-full-year-of-fiscal-2026/
17. KeyBanc Capital Markets and Sapphire Ventures (2024-10-23). 15th annual Private SaaS Company Survey, press release. https://sapphireventures.com/press/keybanc-capital-markets-and-sapphire-ventures-private-saas-company-survey-reveals-a-continued-focus-on-operational-efficiency-and-profitability/
18. ICONIQ Growth. "State of Software 2025." https://www.iconiq.com/growth/reports/2025-state-of-software
19. Ascarza, E., Iyengar, R., and Schleicher, M. (2016). "The Perils of Proactive Churn Prevention Using Plan Recommendations: Evidence from a Field Experiment." *Journal of Marketing Research* 53(1), 46 to 60. https://journals.sagepub.com/doi/abs/10.1509/jmr.13.0483
20. Pendo. "The 2019 Feature Adoption Report" (vendor; 615 subscriptions, three months of usage). https://www.pendo.io/resources/the-2019-feature-adoption-report/
21. Becker, J. U., Spann, M., and Barrot, C. (2020). "Impact of Proactive Postsales Service and Cross-Selling Activities on Customer Churn and Service Calls." *Journal of Service Research* 23(1), 53 to 69. DOI 10.1177/1094670519883347
22. Mazal, J. (2023-02-28). "How Duolingo reignited user growth." Lenny's Newsletter. https://www.lennysnewsletter.com/p/how-duolingo-reignited-user-growth
23. Yancey, K. P., and Settles, B. (2020). "A Sleeping, Recovering Bandit Algorithm for Optimizing Recurring Notifications." KDD 2020. DOI 10.1145/3394486.3403351. https://research.duolingo.com/papers/yancey.kdd20.pdf
24. Federal Trade Commission (2022-09). "Bringing Dark Patterns to Light." Staff report. https://www.ftc.gov/system/files/ftc_gov/pdf/P214800+Dark+Patterns+Report+9.14.2022+-+FINAL.pdf
