Cohort profitability
How these numbers are defined
Window attribution. Every metric filters on transferDateTime, the week the lead came in, not the week a policy issued. A policy that issues now from a lead bought three weeks ago counts in that earlier cohort. This is what makes vendor profitability honest.
Lead purchased. One consultation document. You only log charged transfers, so each record is one paid lead.
Issued. A record whose policy.issueDate is set. Submitted is outcome = Application Submitted. Submitted is not yet issued.
30 day persistency. Of issued policies old enough to have reached day 30, the share with policy.active30 true. The sample count is shown so you know how thin it is.
Net commission per lead. Sum of policy.netRetainedCommission where settled, or application.estAdvance as the expected value where not yet settled, divided by leads purchased.
First call close rate. Among submitted apps, the share where application.applicationDate is the same day as the transfer. There is no field marking a non closing call as first contact versus follow up. Add isFollowUp if you want true first versus follow up across all calls.
Charged vs dead. Charged equals your logged record count. Dead is not in this data model. It needs the vendorDailyStats collection. That tile stays flagged until its schema is wired in.