What you'll learn
- Combine CRM data and ad-platform exports
- Produce a weighted forecast and channel ROAS
- Email a 1-page PDF + the underlying Excel
Project brief
Build monday_gtm.py that runs every Sunday night and emails a 1-page PDF + Excel pack to the VP of Sales and the VP of Marketing.
The PDF cover page (auto-generated)
- Weighted pipeline forecast — total, by stage, by rep.
- Last week's spend by channel + ROAS.
- 5 "stuck deals" that have not moved in 30+ days.
- Net-new leads added in the last week.
The Excel underneath
- Tab 1: Pipeline by stage.
- Tab 2: Pipeline by rep, with quota %.
- Tab 3: Stuck deals (sorted by amount desc).
- Tab 4: Channel ROAS, last 4 weeks.
- Tab 5: Net-new leads (segmented by source).
Acceptance criteria
- One command, full pack built in < 90 seconds.
- The PDF prints cleanly on A4 / Letter without scaling.
- Excel is opened and looks "clean" — no extra empty tabs, no #DIV/0! cells.
- Email sent with both files attached, Subject line: "GTM Weekly — <week-of>".
- Scheduled for Sunday 11 PM.
Stretch goals
- Add a small RFM segment summary on the PDF cover.
- Track week-over-week changes for every KPI on the cover.
- Add a "biggest deal closed last week" callout for morale.
What to show off
An automated Monday-morning report that two VPs now rely on. The fact that they can't tell you didn't hand-make it.
📹 Video walkthrough
A video walkthrough of this lesson will be embedded here. Until then, the
written walkthrough above mirrors what the video will cover step-for-step.