Metric cards pixelpress-trial-conversion

PixelPress Pro mobile trial conversion

March 2026 first-trial cohort, as implemented in the saved SQL

1 The gist · for everyone

What share of people who start a PixelPress Pro free trial become paying subscribers?

14.3%

Among mobile users whose started from 2 through 9 March 2026, 14.3% had a on after start.

6,894 of 48,210 trial users had a positive charge in the implemented window.

About 14 in every 100 users in the implemented first-trial mobile had a positive charge by day 14.

What kind of claim: Describes a level. This number describes what happened in one group. It does not compare groups or explain why.
14.3% had a positive charge (about 6,894 of 48,210)85.7% did not
Divide users with a positive charge by all users in the implemented cohort.

Safe to say

"In the saved March run, 14.3% of first recorded PixelPress Pro mobile trial users had a positive charge on days 0-14 after trial start."

Not this

"The new onboarding caused a 1.4-point lift," or "the metric used a 30-day window ending 8 March."

Before you repeat it

The does not match the readout: it uses a 14-day parameter, includes starts on 9 March, and does not show the test-account or refund exclusions described in the .

2 How it's built · for the curious

How the number is made

Follow one user: Jordan

Jordan starts a first recorded on 4 March 2026, so day 14 is 18 March.

Positive-charge window · days 0–14First recorded trial start (day 0)123day 14
  1. 1day 0 Trial starts; Jordan enters the
  2. 2day 14 A posts counts
  3. 3day 15 Another positive charge posts outside the implemented window

Result: Jordan counts as converted because the day-14 positive charge is inside the 's inclusive window. A first charge on day 15 would not count.

Now the general rule, one step at a time. Each step has the plain version, with the exact version one click away.

  1. Step 1 · Who is counted

    Start with users, then apply each rule

    One PixelPress Pro mobile user.

    Exactly

    One distinct user_id from app.trial_events after taking MIN(trial_start_date) per user for product = 'PIXELPRESS_PRO' and platform IN ('ios', 'android').

    S3
    All users
    Keep if Users with at least one PixelPress Pro trial event on iOS or Android.
    Keep if Each user is assigned their first recorded PixelPress Pro mobile trial date.
    Keep if The date is from 2 through 9 March 2026.48,210 remain
    Counted in the denominator
  2. Step 2 · When the clock starts

    Time zero: first recorded trial start

    Each user's clock starts on their first recorded PixelPress Pro mobile trial date.

    • Positive-charge window: Trial start day through day 14 after trial start. A charge on day 14 still counts. (days 0–14)
    Exactly

    trial_start_date is MIN(t.trial_start_date) per user_id from the trials CTE.

    S3
    Positive-charge window · days 0–14First recorded trial start (day 0)day 14
  3. Step 3 · What counts

    Had a positive charge

    Counts a user if they had at least one charge above zero dollars in the window.

    Exactly

    first_charge joins billing.charges where b.user_id = c.user_id, b.amount_usd > 0, and b.charge_date falls in the inclusive charge window, then groups to MIN(b.charge_date). The final summary counts DISTINCT f.user_id.

    S3
    Positive-charge window · days 0–14First recorded trial start (day 0)123day 14
  4. Step 4 · Combine

    Turn yes/no answers into a share

    Divide users with a positive charge by all users in the implemented cohort.

    Exactly

    ROUND(100.0 * COUNT(DISTINCT f.user_id) / COUNT(DISTINCT c.user_id), 2) AS conversion_rate_pct.

    S3
    users with at least one qualifying positive charge≈ 6,894
    all users in the implemented March first-trial mobile cohort48,210
    = 14.3%March 2026 first-trial mobile cohort
  5. Step 5 · How sure

    Show the range of plausible values

    No or standard error was reported for the 14.3% headline.

    Not covered by this range: Random uncertainty, data-quality uncertainty, and uncertainty from the definition discrepancies are not quantified.

    Exactly

    conversion_summary.csv reports trial_users, converted_users, conversion_rate_pct, run_date, and data_complete_through only.

    S4
    Each dot is one of 20 equally likely values, given sampling noise alone (normal approximation to the interval).

3 Keep in mind · before you act on it

What could make this misleading

Complete. The latest first recorded trial start is 09 Mar 2026; its positive-charge window ends 23 Mar 2026. Data are complete through 17 Apr 2026, so every window is fully observed. This number should not move as more data arrive.

Caveats

↑ May make the number look bigger than it really is↓ May make the number look smaller than it really is± The true uncertainty is larger than shown↕ Could push the number either way◎ Limits what the number can be used to conclude
↓

The saved SQL is not a 30-day metric

The and readout define conversion as payment within 30 days, but the parameter is 14 and the inclusive date comparison counts .

May make the number look smaller than it really is · high importance S1 S2 S3

↕

The cohort end date differs

The README says the runs through 8 March, while the SQL includes starts through 9 March.

Could push the number either way · high importance S1 S3

↕

Described exclusions are not visible in SQL

The README says internal, test, and refunded accounts are excluded, but the SQL shown here only requires amount_usd > 0 and does not filter internal users, test users, or refunds.

Could push the number either way · high importance S1 S3

◎

The February comparison is not reproducible from these files

The readout quotes a 12.9% February rate and a 1.4-point lift, but the fixture includes no February result, comparison SQL, or uncertainty.

Limits what the number can be used to conclude · medium importance S2

±

No uncertainty interval saved

The saved output reports a estimate only. It does not include a , standard error, or sensitivity run.

The true uncertainty is larger than shown · low importance S4

Common misreadings

Tempting, but wrongAccurate
14.3% is the 30-day .The saved SQL result is a positive-charge rate on days 0-14 after first recorded start.
The new onboarding caused a 1.4-point lift.The files show a March rate and a quoted February comparison, but no design that isolates the onboarding effect.
The cohort is exactly 2-8 March.The SQL includes first recorded trial starts from 2 through 9 March, inclusive.
Every trial start in the week is counted.The SQL first reduces each user to their earliest recorded mobile trial, then keeps users whose earliest trial is in the cohort.
A always means a net-paid subscriber.The SQL checks amount_usd > 0. The refund exclusion described in the README is not visible in the SQL.

Judgment calls

Which headline to document

Chose: Use the 14.3% March conversion rate as the headline, because it is the first number in the readout and is backed by the saved CSV.

Could have chosen: Write a separate card for the 1.4-point March-versus-February lift.

Why: The February rate and lift are quoted in the readout but no February output or comparison code is included in the fixture.

What it changes: The card explains the measured March level and treats the lift as readout-only, not independently reproducible.

How to express the outcome window

Chose: Describe the implemented SQL as days 0-14, rather than repeating the README's 30-day definition.

Could have chosen: Treat the README as authoritative and mark the saved SQL/result as incompatible with the stated metric.

Why: The skill says to trace the number to code and write from the implemented rule.

What it changes: Readers see that the 14.3% number is not evidence for a 30-day conversion rate.

4 Reproduce it · for specialists

The exact specification

Estimand

PopulationUsers whose earliest recorded PixelPress Pro iOS or Android trial started from 2026-03-02 through 2026-03-09, inclusive.
Exposure / contrastNone. This is a single-cohort descriptive rate.
Time zeroEach user's earliest recorded PixelPress Pro mobile trial_start_date.
VariableIndicator for at least one billing.charges row with amount_usd > 0 and charge_date on day offsets 0 through 14 after time zero.
Intercurrent eventsRefunds, internal/test status, and later trial starts are not handled in the saved SQL except that later trial starts do not change time zero.
Summary measureProportion of implemented-cohort users with converted_to_paid = 1, reported as a percent rounded to two decimals.

Where the description and the code disagree

Outcome window length

Described

README and readout define conversion as paying within 30 days of trial start.

Implemented

params sets conversion_days = 14, and first_charge keeps charge_date BETWEEN trial_start_date AND DATE_ADD(trial_start_date, 14), inclusive.

Impact: A shorter window likely understates the 30-day conversion rate. The size is unknown from the saved files.

S1S2S3

Cohort date range

Described

README says trials started 2026-03-02 through 2026-03-08.

Implemented

SQL sets cohort_end to DATE '2026-03-09' and uses BETWEEN, so 9 March starts are included.

Impact: The implemented denominator can include an extra start date. Direction and size are unknown.

S1S3

Internal and test account exclusions

Described

README says internal and test accounts are excluded.

Implemented

No internal-account or test-account filter appears in the saved SQL.

Impact: If such accounts exist in app.trial_events, they remain in the result. Direction and size are unknown.

S1S3

Refund exclusion

Described

README says refunded charges do not count.

Implemented

SQL joins billing.charges with b.amount_usd > 0, but shows no refund, reversal, or net-paid filter.

Impact: Refunded positive charges could overstate net-paid conversion. The size is unknown.

S1S3

First trial versus any trial

Described

Descriptions say users who started a trial in the cohort week.

Implemented

SQL first takes MIN(trial_start_date) per user across PixelPress Pro mobile trial events, then filters that first recorded trial into the cohort.

Impact: Users with an earlier PixelPress Pro mobile trial and another trial in March are excluded. Direction and size are unknown.

S1S2S3

Onboarding lift claim

Described

The readout says the new onboarding is driving a 1.4-point lift and recommends rolling it out to web.

Implemented

The saved SQL computes a single March cohort rate only. No February cohort SQL, web cohort, counterfactual, adjustment, or uncertainty is included.

Impact: The fixture supports a descriptive March rate, not a causal onboarding claim or web rollout inference.

S2S3S4

Rules as implemented

StageExact ruleSource
Eligibility 1app.trial_events rows where product = 'PIXELPRESS_PRO' and platform IN ('ios', 'android').S3
Eligibility 2The trials CTE groups by user_id and sets trial_start_date to MIN(t.trial_start_date).S3
Eligibility 3
48,210 remain
cohort keeps rows where trial_start_date BETWEEN DATE '2026-03-02' AND DATE '2026-03-09', inclusive.S3S4
Time zerotrial_start_date is MIN(t.trial_start_date) per user_id from the trials CTE.S3
Positive-charge window
[0, 15) days
b.charge_date BETWEEN c.trial_start_date AND DATE_ADD(c.trial_start_date, p.conversion_days), with conversion_days = 14. Because BETWEEN is inclusive, this is day offsets 0 through 14.S3
Had a positive charge
indicator
first_charge joins billing.charges where b.user_id = c.user_id, b.amount_usd > 0, and b.charge_date falls in the inclusive charge window, then groups to MIN(b.charge_date). The final summary counts DISTINCT f.user_id.S3
AggregateROUND(100.0 * COUNT(DISTINCT f.user_id) / COUNT(DISTINCT c.user_id), 2) AS conversion_rate_pct.S3
Uncertaintyconversion_summary.csv reports trial_users, converted_users, conversion_rate_pct, run_date, and data_complete_through only.S4

Numbers per group

GroupDefinitionValuen
March 2026 first-trial mobile cohortproduct = 'PIXELPRESS_PRO', platform IN ('ios', 'android'), MIN(trial_start_date) BETWEEN DATE '2026-03-02' AND DATE '2026-03-09'.14.348,210

Parameters

NameValueMeaning
cohort_start2026-03-02First included first recorded trial date
cohort_end2026-03-09Last included first recorded trial date in SQL
conversion_days14Inclusive DATE_ADD endpoint for qualifying charges
productPIXELPRESS_PROTrial event product kept by SQL
platformsios, androidTrial event platforms kept by SQL

Data lineage

  1. app.trial_events

    Trial starts and cohort assignment

    Grain: trial event · Filters: product = 'PIXELPRESS_PRO'; platform IN ('ios', 'android'); MIN(trial_start_date) per user_id

  2. billing.charges

    Positive-charge outcome

    Grain: charge event · Filters: amount_usd > 0; charge_date on days 0-14 after trial_start_date

  3. results/conversion_summary.csv

    Saved summary used for the headline

    Grain: one-row summary · Filters: trial_users = 48,210; converted_users = 6,894; conversion_rate_pct = 14.30

Code that defines it

Cohort parameterseval/fixtures/syn-a/sql/trial_conversion.sql:1-43
WITH params AS (
  SELECT DATE '2026-03-02' AS cohort_start,
         DATE '2026-03-09' AS cohort_end,
         14                AS conversion_days
)
First recorded mobile trial per usereval/fixtures/syn-a/sql/trial_conversion.sql:1-43
SELECT t.user_id,
       MIN(t.trial_start_date) AS trial_start_date
FROM app.trial_events t
WHERE t.product = 'PIXELPRESS_PRO'
  AND t.platform IN ('ios', 'android')
GROUP BY t.user_id
Cohort date filtereval/fixtures/syn-a/sql/trial_conversion.sql:1-43
WHERE tr.trial_start_date BETWEEN p.cohort_start AND p.cohort_end
Positive-charge outcomeeval/fixtures/syn-a/sql/trial_conversion.sql:1-43
JOIN billing.charges b
  ON b.user_id = c.user_id
 AND b.amount_usd > 0
WHERE b.charge_date BETWEEN c.trial_start_date
                        AND DATE_ADD(c.trial_start_date, p.conversion_days)
Conversion-rate aggregationeval/fixtures/syn-a/sql/trial_conversion.sql:1-43
COUNT(DISTINCT c.user_id) AS trial_users,
COUNT(DISTINCT f.user_id) AS converted_users,
ROUND(100.0 * COUNT(DISTINCT f.user_id) / COUNT(DISTINCT c.user_id), 2) AS conversion_rate_pct

Rebuild it

Data complete through: 2026-04-17

Receipts:

  • conversion_summary.csv reports 48,210 trial users, 6,894 converted users, and 14.30%.
  • Independent arithmetic: 6,894 / 48,210 * 100 = 14.2999%, which rounds to 14.30%.

Tests: No repository tests were included for this fixture. The card reproduces the headline from the saved CSV and records SQL-description discrepancies.

Sources

  1. S1 eval/fixtures/syn-a/README.md lines 1-21 · Question, prose definition, cohort dates, exclusions, and file list
  2. S2 eval/fixtures/syn-a/readout.md lines 1-9 · Headline, February comparison, onboarding claim, and 30-day definition
  3. S3 eval/fixtures/syn-a/sql/trial_conversion.sql lines 1-43 · Implemented cohort, charge window, and aggregation
  4. S4 eval/fixtures/syn-a/results/conversion_summary.csv lines 1-2 · Saved result row

Change log

  • Saved conversion_summary.csv with 48,210 trial users, 6,894 converted users, and 14.30% conversion.
  • Metric card written from the saved SQL and CSV; description-vs-code discrepancies recorded.
Card quality checks: 0 errors · 0 warnings

    Check yourself

    Could you explain it to a colleague?

    Big pictureWhat is the safest reading of the 14.3% headline?
    DetailWhich trial starts are included by the SQL cohort filter?
    Apply itA user starts their first recorded mobile trial on 4 March and first pays on 19 March, day 15. Do they count as converted in the saved SQL?

    Explain it back

    Write one or two sentences as if telling a colleague. Then compare with the checklist.

    Glossary

    cohort (March cohort)
    The group of users whose first recorded trial starts in the chosen date range.
    confidence interval (interval)
    A range that shows how much random noise could move an estimate. This saved result does not include one.
    conversion rate (trial conversion rate)
    The share of users in the cohort who have the qualifying paid event.
    day 0 (days 0-14)
    The trial start day. Day 14 is two weeks after that start day.
    descriptive rate (descriptive)
    A number that describes what happened in one group without showing what caused it.
    first recorded trial (earliest trial)
    The earliest PixelPress Pro mobile trial date seen for a user in the trial table.
    mobile (iOS, Android)
    The app platforms included by the SQL.
    percentage point (point, points, pp)
    The direct difference between two percentages. Moving from 12.9% to 14.3% is 1.4 percentage points.
    PixelPress Pro
    The product whose trial users are counted in this metric.
    positive charge (charge above zero dollars)
    A billing row where the charged amount is greater than zero.
    README
    A project note that describes an analysis for readers.
    SQL
    The query language used here to define the cohort and calculate the rate.
    trial (free trial)
    A temporary product start before a paid charge.