# Exercise: Channel Conversion Model Criticism

Use `channel_conversion.csv`.

## Goal

Practice deciding when pooled, unpooled, or partially pooled estimates are appropriate.

## Questions

1. What is the treatment-control conversion difference by channel?
2. Which channels have the least data?
3. Where might no-pooling overreact?
4. Where might complete pooling hide meaningful heterogeneity?
5. What posterior predictive checks would matter for the rollout decision?

## SQL Starter

Channel conversion rates:

```sql
SELECT
  channel,
  treatment,
  users,
  conversions,
  CAST(conversions AS REAL) / users AS conversion_rate
FROM channel_conversion
ORDER BY channel, treatment;
```

Treatment difference by channel:

```sql
SELECT
  channel,
  MAX(CASE WHEN treatment = 'treatment' THEN CAST(conversions AS REAL) / users END) -
  MAX(CASE WHEN treatment = 'control' THEN CAST(conversions AS REAL) / users END) AS treatment_lift
FROM channel_conversion
GROUP BY channel
ORDER BY treatment_lift DESC;
```

## Interpretation Prompt

Write a model criticism note that explains:

- why complete pooling is too blunt
- why no-pooling is too noisy
- why partial pooling is a reasonable default
- what would make the model unsafe for rollout

## Worked-Solution Standard

A strong answer links model choice to the decision. It should recommend staged rollout or holdbacks where channel-level uncertainty is strategically important.
