Choose the decision your report should support
A weekly growth report can show whether signups, activation, and billing activity changed over the same period. PostHog supplies product analytics; Stripe supplies payment and subscription records. OpenTag can bring those sources into the Slack channel where you review growth.
This guide uses a weekly report in #growth as an example. Use the example as a workflow, and replace its metric definitions with your own. Start with the metrics your team already trusts and one person responsible for checking the report.
1. Connect the accounts and choose the audience
Add OpenTag to your Slack workspace and invite it into the channel where the report belongs. Connect the intended PostHog project and Stripe account through OpenTag's Integrations page. Use read-only access for reporting where the connector offers that choice. The Stripe integration is read-only. It cannot refund payments, cancel subscriptions, or change account records.
Check who may use each connection and who may read the destination channel. Connecting an account does not make all of its contents appropriate for every teammate. A broad channel may only need aggregate trends; customer-level billing details may belong in a narrower channel or a private conversation. Keep this reporting task focused on reading and summarizing data.
“A scheduled report is only useful when the team can trace its numbers and act on the result.”
2. Define the metrics before asking for a summary
Write down the PostHog signup event, the activation event or funnel, and whether you want unique people, accounts, or total events. Name the project and any exclusions, such as internal users or test accounts. For activation, decide whether you are measuring events that happened during the week or following the people who signed up that week. Events during the week measure activity in that period. Following that week’s signups measures what a specific cohort did afterward.
Choose a Stripe measure that matches the question. Collected payments, new subscriptions, canceled subscriptions, and recurring revenue are not interchangeable. Specify live or test mode, the account, currency treatment, and how refunds or failed payments should be handled. Avoid combining product and billing totals at the customer level unless a reliable shared identifier exists.
Use complete reporting periods and one timezone. For example, compare the last complete Monday-through-Sunday week with the preceding complete week in America/Los_Angeles. A Monday morning report should not compare a partial current week with seven days of historical data.
3. Run a one-off report in Slack
Give OpenTag the metric definitions above, then ask: “@OpenTag prepare a growth report for the last complete Monday-through-Sunday week in America/Los_Angeles, compared with the preceding week. Use our connected PostHog project and live Stripe account. Report the signup and activation metrics we defined, collected payments, and new and canceled subscriptions. Include source links, date ranges, and any missing data. Keep the result in this thread and do not change records.”
Check that the output names the period and shows current and previous values. Ask OpenTag to explain any change worth discussing using the linked source data. Ask it to separate an observed change from a possible explanation. If a source is unavailable or two definitions conflict, the report should identify the gap instead of filling it with an estimate presented as fact.
4. Check the result against the original sources
Open the linked PostHog views and Stripe records. Check at least one metric from each source, confirm that each source uses the intended date window and filters, and look for test data or currency differences. If a previous value is zero, a percentage change can be undefined; the absolute change is still useful.
A signup increase and a payment increase do not prove that the same campaign caused both. Ask for the evidence behind an explanation, and leave unsupported causes as hypotheses. Correct the instructions in the thread before putting the report on a schedule.
5. Turn the checked report into a routine
Once the one-off report is useful, ask: “Create a routine for this report every Monday at 09:00 America/Los_Angeles. Each run should compare the last complete Monday-through-Sunday week with the preceding week, using the metric definitions we agreed. Post the sourced summary in #growth and flag missing data.”
Review OpenTag's confirmation of the routine's schedule, timezone, sources, and destination. Make sure the dates move with each run instead of preserving the dates of the first report. Routine results can post to Slack without a fresh approval click, so choose the destination deliberately and inspect the first scheduled result.
Assign an owner and review who can edit the routine. Editors can change work that uses the owner's authorized connections. If a source account, metric definition, or reporting audience changes, update the routine and check its next result. Pause it when the report stops serving a decision. Each run consumes usage credits; OpenTag's pricing page explains current plans and trial terms.
If the report is incomplete
First check the connection, account selection, and permissions. Next check whether events arrived late, the date range changed, or a metric was renamed. A missing source should be visible in the report. Reconnect through the normal integration flow when needed, then rerun and verify the affected section.
Start with a small report you can inspect. Add campaign data, release context, or support trends only when those sources help answer the weekly question. Keep each added source linked so readers can check the evidence before acting on the report.
Resources
Sources and further reading
About the author
Shelden Shi
Co-founder and CTO at OpenTag. Engineering and the agent.
Published
Back to the blog