Skip to content

Commit 98eb337

Browse files
chore: update billing Q2 2026 objectives (#16202)
* billing q2 2026 objectives * Update automated outbound pipelines objective Add additional detail to outbound pipeline * ledger details --------- Co-authored-by: Abhischek <abhischek@posthog.com>
1 parent 5c5d2e5 commit 98eb337

1 file changed

Lines changed: 54 additions & 42 deletions

File tree

Lines changed: 54 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,57 @@
1-
## Q1 2026 Objectives
2-
3-
1. **Implement and switch to the new revenue model (eng leads: <TeamMember name="Patricio Tarantino" />, <TeamMember name="Marce Coll" />, revops lead: <TeamMember name="Mine Kansu" />)**
4-
- New model implemented, understood and trusted across the team, and easy to work with
5-
- Differences vs old model expected and explained
6-
- All internal dashboards and investor reports re-implemented based on the new model
7-
8-
2. **Make billing the source of truth (leads: <TeamMember name="Pawel Cebula" />, <TeamMember name="Marce Coll" />)**
9-
- Write an RFC on this and alternative directions and decide
10-
- Implement the chosen direction
11-
12-
3. **Ship all expected pricing launches and changes (lead:<TeamMember name="Pawel Cebula" />)**
13-
- Expected
14-
- Workflows (push, sms)
15-
- Logs
16-
- Data warehouse (storage)
17-
- Array
1+
## Q2 2026 Objectives
2+
3+
1. **Complete the transition to the new revenue model (eng lead: <TeamMember name="Marce Coll" />, revops lead: <TeamMember name="Mine Kansu" />)**
4+
- Initial implementation
5+
- Discrepancy hunting and fixing - all understood and fixed or explicitly accepted
6+
- All internal dashboards re-implemented on the new model
7+
- Investor reporting migrated
8+
- Model understood and trusted across the team
9+
- Finance signs off on model documentation
10+
- Zero revops escalations for routine ARR/MRR questions for 4 weeks after launch
11+
- Bonus: self-serve (finance can pull monthly data they need to close the books without billing/revops in the loop)
12+
- Stretch goal: revenue model data flowing into Campfire
13+
14+
2. **Migrate all credits to an in-house ledger (lead: <TeamMember name="Pawel Cebula" />)**
15+
- Implement a double-entry credit ledger
16+
- Deploy and run the shadow ledger
17+
- Fix unexpected discrepancies
18+
- Migrate from customer balance to the ledger
19+
20+
3. **Ship all expected pricing launches and changes (lead: <TeamMember name="Pawel Cebula" />)**
21+
- **PostHog Code**
22+
- Seat-based subscriptions (free and paid)
23+
- Seat-based subscriptions (free and multiple paid)
24+
- Overages and background agents
25+
- **Storage and compute**
26+
- Data warehouse
1827
- Endpoints
19-
- Blockers
20-
- Implement solution to the limit of max 20 subscription items
21-
- Enable support for non-incremental usage metrics (e.g. storage for data warehouse, endpoints)
22-
23-
4. **Integrate billing and revenue data with Campfire (lead: <TeamMember name="Patricio Tarantino" />)**
24-
- Decide on the architecture
25-
- Implement API connections
26-
- Push data needed for accounting (Stripe objects)
27-
- Push data from revenue model
28-
29-
5. **Improve quota limiting stability and accuracy (lead: <TeamMember name="Marce Coll" />)**
30-
- Deploy money domain limiting strategy
31-
- Align usage and limit calculations in `/billing` API response with money domain limit strategy
32-
33-
6. **Reduce tech debt and improve developer experience (lead: <TeamMember name="Marce Coll" />)**
28+
- **Workflows**
29+
- Channels: Push, SMS
30+
- Per-workflow limit exclusion
31+
- **Batch exports**
32+
- Higher frequency exports
33+
- **Logs**
34+
- 30 and 90 day retention
35+
36+
4. **Reduce tech debt and improve developer experience (lead: <TeamMember name="Marce Coll" />)**
37+
- Improve async task observability and reliability
38+
- Upgrade to PostgreSQL 17/18
3439
- Switch from Nginx to Granian
35-
- Improve observability and tracing
36-
- Migrate PostgreSQL
37-
- Upgrade Stripe API version
38-
39-
7. **Roll out the custom PostHog Org object in Salesforce and update all integrations and lead triggers for smooth transition (lead: <TeamMember name="Mine Kansu" />)**
4040

41-
8. **Launch an engineering-led outbound motion for high signal leads (lead: <TeamMember name="Abhischek Thottakara" />)**
42-
- Source and curate datasets of Entities (Company) and Contacts (Person) (i.e the leads)
43-
- Automate qualification of leads based on signals
44-
- Automate sequencing and outreach for high signal leads
45-
- Improve how we identify and prioritize self-serve orgs & persona's using intent based signals (high potential accounts and high response rate persona)
41+
5. **Complete the Salesforce org object rollout (lead: <TeamMember name="Abhischek Thottakara" />)**
42+
- Deploy deduplication workflow and scripts to production
43+
- Complete historical migration to custom org object
44+
- Migrate all integrations and lead triggers to new object
45+
- Confirm Vitally and Salesforce sync works under the new setup
46+
- Document all scripts and workflows in PostHog-owned GitHub repo
47+
48+
6. **Build customer health score v1 in Vitally (lead: <TeamMember name="Mine Kansu" />)**
49+
- Define "active user" per product
50+
- Define org-level "active customer" rollup logic
51+
- Validate definitions against known accounts (healthy, churned, at-risk)
52+
- Implement health scores in Vitally
53+
54+
7. **Implement fully automated outbound pipelines (lead: <TeamMember name="Abhischek Thottakara" />)**
55+
- Source and score additional leads (LinkedIn followers, Appfigures.com targets, Stripe Propensity Leads)
56+
- Generate outbound sequence content using LLM in Clay
57+
- Sequence highest scoring targets automatically using Lemlist

0 commit comments

Comments
 (0)