# Mobile Composition Follow-Up

## 1. Stratum-by-stratum table

All 12 mobile strata use the channel × audience × creative dimensions from the dictionary. Week 1 and Week 2 counts are summed across the seven days in each period.

| # | Channel | Audience | Creative | W1 Starts | W1 Comps | W1 Rate | W2 Starts | W2 Comps | W2 Rate | W1 Weight |
|---:|---|---|---|---:|---:|---:|---:|---:|---:|---:|
| 1 | Google Search | Skeptical | Traceability | 700 | 378 | 54.0% | 350 | 154 | 44.0% | 0.0833 |
| 2 | Google Search | Skeptical | Value | 700 | 406 | 58.0% | 350 | 168 | 48.0% | 0.0833 |
| 3 | Google Search | Exploring | Traceability | 700 | 175 | 25.0% | 1,050 | 182 | 17.3% | 0.0833 |
| 4 | Google Search | Exploring | Value | 700 | 203 | 29.0% | 1,050 | 210 | 20.0% | 0.0833 |
| 5 | LinkedIn | Skeptical | Traceability | 700 | 406 | 58.0% | 350 | 168 | 48.0% | 0.0833 |
| 6 | LinkedIn | Skeptical | Value | 700 | 434 | 62.0% | 350 | 182 | 52.0% | 0.0833 |
| 7 | LinkedIn | Exploring | Traceability | 700 | 196 | 28.0% | 1,050 | 203 | 19.3% | 0.0833 |
| 8 | LinkedIn | Exploring | Value | 700 | 224 | 32.0% | 1,050 | 231 | 22.0% | 0.0833 |
| 9 | Reddit Paid | Skeptical | Traceability | 700 | 434 | 62.0% | 350 | 182 | 52.0% | 0.0833 |
| 10 | Reddit Paid | Skeptical | Value | 700 | 462 | 66.0% | 350 | 196 | 56.0% | 0.0833 |
| 11 | Reddit Paid | Exploring | Traceability | 700 | 217 | 31.0% | 1,050 | 224 | 21.3% | 0.0833 |
| 12 | Reddit Paid | Exploring | Value | 700 | 245 | 35.0% | 1,050 | 245 | 23.3% | 0.0833 |
| **Total** | | | | **8,400** | **3,780** | **45.0%** | **8,400** | **2,360** | **28.1%** | **1.0000** |

### Arithmetic checks

Week 1 totals:

```text
W1 starts  = 12 × 700 = 8,400
W1 comps   = 378 + 406 + 175 + 203 + 406 + 434 + 196 + 224 + 434 + 462 + 217 + 245
           = 3,780
W1 rate    = 3,780 / 8,400 = 0.45 = 45.0%
```

Week 2 starts are not uniform at 700 per stratum. The CSV pattern gives:

- Skeptical mobile strata: 50 starts per day × 7 days = **350**
- Exploring mobile traceability and value strata: 150 starts per day × 7 days = **1,050**

```text
W2 skeptical starts  = 6 strata × 350 = 2,100
W2 exploring starts  = 6 strata × 1,050 = 6,300
W2 starts            = 2,100 + 6,300 = 8,400
```

This matches the dictionary’s aggregate mobile start total for Week 2. The rates in the table are calculated from these counts, e.g.:

```text
Google / skeptical / traceability W2:
154 / 350 = 0.4400 = 44.0%

Google / exploring / traceability W2:
182 / 1,050 = 0.17333… = 17.3%
```

## 2. Week 1 weights

Week 1 weights are each stratum’s Week 1 starts divided by total Week 1 mobile starts.

Because every Week 1 stratum has 700 starts and total Week 1 starts are 8,400:

```text
weight for each stratum = 700 / 8,400 = 1 / 12 = 0.083333…
```

Sum of weights:

```text
12 × (1 / 12) = 1.0000
```

No zero-weight or missing-weight stratum is present.

## 3. Weighted Week 2 contribution

The fixed-mix Week 2 rate uses **Week 1 weights** multiplied by each stratum’s **Week 2 completion rate**.

| # | W1 Weight | W2 Rate | Weighted W2 Contribution |
|---:|---:|---:|---:|
| 1 | 0.083333 | 44.0% | 3.6667% |
| 2 | 0.083333 | 48.0% | 4.0000% |
| 3 | 0.083333 | 17.3333% | 1.4433% |
| 4 | 0.083333 | 20.0% | 1.6667% |
| 5 | 0.083333 | 48.0% | 4.0000% |
| 6 | 0.083333 | 52.0% | 4.3333% |
| 7 | 0.083333 | 19.3333% | 1.6111% |
| 8 | 0.083333 | 22.0% | 1.8333% |
| 9 | 0.083333 | 52.0% | 4.3333% |
| 10 | 0.083333 | 56.0% | 4.6667% |
| 11 | 0.083333 | 21.3333% | 1.7778% |
| 12 | 0.083333 | 23.3333% | 1.9444% |
| **Total** | **1.000000** | | **35.2767%** |

Using unrounded Week 2 rates:

```text
Google / skeptical / traceability:
154 / 350 = 0.44

Google / exploring / traceability:
182 / 1,050 = 0.173333…
```

The weighted total is approximately:

```text
35.3%
```

Therefore the comparison is:

| Measure | Week 2 mobile completion |
|---|---:|
| Observed Week 2 rate | **28.1%** |
| Fixed Week 1 mix applied to Week 2 | **35.3%** |

The two are not equal, so composition matters, but the fixed-mix rate is still far below Week 1’s **45.0%**.

## 4. What this comparison does and does not imply

### What it does

- It separates the observed Week 2 mobile rate into two parts:
  - the effect of changing stratum mix, and
  - the effect of within-stratum rate movement.
- It shows that if Week 2 had preserved the Week 1 stratum mix, the Week 2 mobile completion rate would have been about **35.3%**, not **28.1%**.
- It quantifies the composition effect as roughly:

```text
35.3% − 28.1% ≈ 7.2 percentage points
```

This means part of the observed Week 2 decline is attributable to mobile starts shifting toward lower-completing `exploring` strata and away from higher-completing `skeptical` strata.

### What it does not imply

- It **does not** imply that the remaining decline from Week 1’s 45.0% to the fixed-mix 35.3% is explained by product failure.
- It **does not** show that within-stratum movement has a single cause.
- It **does not** prove that the `exploring` audience performed worse because of the message.
- It **does not** establish causality for either composition change or within-stratum change.
- It **does not** mean the Week 2 aggregate decline is unimportant. Even with fixed Week 1 mix, Week 2 was about **9.7 percentage points below the Week 1 fixed-mix rate**:

```text
45.0% − 35.3% ≈ 9.7 pp
```

The within-stratum drop is still the larger component.

## 5. Arithmetic uncertainty

The table uses counts summed by hand from the supplied CSV structure. I did not execute code. The following should be rechecked in the final reviewed draft:

- exact duplicate row removal and alias normalization;
- exact Week 2 starts for each mobile stratum;
- decimal retention in weighted contributions;
- whether any zero-denominator stratum should be marked unavailable.

The broad conclusion is unlikely to change from small corrections: **both composition and within-stratum movement contributed to the mobile decline; within-stratum movement was the larger contributor.**

## 6. Next evidence needed

To move from composition arithmetic to a defensible explanation, the next evidence is:

1. **Timestamped event-level data** for mobile quiz starts and completions, matched to cohort date and source tag.
2. **Release/QA log** covering the mobile landing page and quiz between Week 1 and Week 2.
3. **Device-level landing-session detail** to verify whether mobile starts became less likely to complete at the same quiz stage.
4. **Audience bucket definitions** to confirm whether `skeptical` and `exploring` shares changed because of targeting/auction changes or because the reporting buckets themselves changed.

Only after those are available can the team test whether the remaining within-stratum mobile drop is a journey problem, a measurement break, or a real behavioral shift.