Problem
When you send matters as much as what you send. Users guess a time, hope for the best. We have all the data to know exactly which day-of-week × hour combinations produce the highest open and click rates for their list, but we don't surface it.
Proposal
Two surfaces in the Pro Analytics dashboard:
- Heatmap — 7 columns (Mon–Sun) × 24 rows (hours). Cell color shows open rate when emails were sent at that slot. Hover for raw counts.
- Recommendation — single sentence: 'Your audience opens most on Tuesdays at 10am UTC (38% open rate vs 21% list average). Schedule there for the best performance.'
Pure frontend / SQL — no backend feature work, just an extra query and a small visualization. Granularity adapts to data volume; if the project has fewer than 50 historical sends, hide the heatmap and show a 'collect more data' state.
Acceptance criteria
- Heatmap renders inline SVG (no chart library)
- Recommendation is conservative — never produced from <50 data points
- Timezone-aware (project setting or UTC default)
Problem
When you send matters as much as what you send. Users guess a time, hope for the best. We have all the data to know exactly which day-of-week × hour combinations produce the highest open and click rates for their list, but we don't surface it.
Proposal
Two surfaces in the Pro Analytics dashboard:
Pure frontend / SQL — no backend feature work, just an extra query and a small visualization. Granularity adapts to data volume; if the project has fewer than 50 historical sends, hide the heatmap and show a 'collect more data' state.
Acceptance criteria