Inputs: audience, entities, and assumptions
This section defines the "starting state" for simulations: who your users are, which entities they track, and what conversion assumptions drive outcome projections.
Current app data
Lifecycle app data
Self-contained sample data is ready
Lifecycle can run immediately with seeded sample users, entities, interest edges, and events.
Active source: current lifecycle sample app tables. Sign in to apply imported workspace data.
App data: current lifecycle database rows
Workspace import: Not imported
Workspace source: Workspace Google Sheets import (Google Sheets)
Input guide: what each control affects
Assumption setsSaved assumptions make simulation runs repeatable and easier to compare.
Save named parameter sets to make runs reproducible. The active set is attached to new campaign runs and stored as a run snapshot.
Scoring thresholdsThresholds control which opportunities are worth generating messages for.
minPriorityScore filters low-fit candidates, whilehighPriorityThreshold controls what counts as high-value opportunity.
Funnel assumptionsFunnel rates translate generated messages into modeled commercial outcomes.
Open/click/engage/purchase rates and AOV drive modeled outcomes downstream. Tune these to test conservative vs aggressive commercial scenarios.
Scoring controls
Scoring settings
Adjust priority weights for interest, value, recency, and engagement. Weights auto-rebalance to keep total weight at 1.0. Lock any value to keep it fixed while editing others.
priorityScore = interestScore × interest_weight + recencyScore × recency_weight + segmentScore × value_weight + engagementScore × engagement_weight
Total weight: 1.000
Variable context
Variable definitions
Use this reference to understand each input, scoring control, and output metric used in the lifecycle engine.
| Variable | Type | Description | Range / Example |
|---|---|---|---|
entity_type | enum | Entity class used in matching and prioritization. | property, permit, legal |
delta_type | enum | Type of detected entity change event. | address_change |
segment | enum | Commercial segment for a user profile. | trial, active, lapsed |
Global lifecycle assumptions
Editable model assumptions
Assumption sets are now persisted server-side for reproducibility across runs.
Assumption mapping (events → candidates → messages)
Events → Candidates
Entity deltas are matched to interest edges and scored with recency + segment signals. Records under minPriorityScore are filtered out.
Candidates → Messages
Highest scored candidates are sorted and top N are generated into message assets. Run-level controls determine how many messages are produced per run.
Messages → Outcomes
Global funnel assumptions (open/click/engage/purchase rates and AOV) model downstream business outcomes.
Sample users
| User | Segment | Status | Action | |
|---|---|---|---|---|
Sample entities
| Entity | Type | City | State | Action |
|---|---|---|---|---|
Sample interest relations
Interest edges connect users to the entities they care about, scored by interestScore and tagged with the source that captured the relationship (signup form, behavioral inference, manual import). Edges feed the interestContribution channel of priority scoring.
| User | Entity | Interest score | Source | Action |
|---|---|---|---|---|
| Elijah Martinez | Liam Davis | |||
| Isabella Moore | Mateo Cooper | |||
| James Nguyen | Mateo Davis | |||
| Jackson Turner | Amelia Young | |||
| Noah Cooper | Henry Nguyen | |||
| Henry Brooks | Chloe Patel | |||
| Scarlett Martinez | Mason Kim | |||
| Evelyn Patel | Lucas Turner | |||
| Jackson Turner | Mateo Cooper | |||
| Liam Flores | Liam Davis |