LOW / CODEBlueprints
sales

Weekly Pipeline Report Generator

Every Monday morning, pull all open deals from HubSpot, calculate pipeline totals by stage, write a formatted summary to Google Sheets, and email the report to leadership. Post highlights to Slack.

Advanced~35 minn8nMake.com 78 downloads 183 views

Setup Instructions

1. Create a Google Sheet named "Weekly Pipeline Reports" with a tab for each week (or a single "Current Week" tab). Add columns: Stage, Deal Count, Total Value, Avg Deal Size, Weighted Value, Top Deals. 2. In HubSpot, note your pipeline ID — go to Settings > Objects > Deals > Pipelines and copy the pipeline ID you want to report on. 3. In your automation platform, create a workflow with a scheduled trigger set to every Monday at 8:00 AM. 4. Add a HubSpot node that fetches all deals in your pipeline with status "open." Use the Search API (/crm/v3/objects/deals/search) with a filter on "pipeline" and "hs_is_closed" = false. Request properties: dealname, amount, dealstage, closedate, hubspot_owner_id. 5. Add a Function/Code node that groups deals by stage, then calculates for each stage: total count, sum of amounts, average deal size, and weighted value (amount multiplied by stage probability). Also identify the top 3 deals by value. 6. Add a Google Sheets node that clears the "Current Week" tab and writes the new summary rows. Include a header row with the report date. 7. Add a Gmail node that formats the data into an HTML email table and sends it to your leadership distribution list. Include pipeline total, week-over-week change (if previous week data is available), and the top 3 deals. 8. Add a Slack node that posts a condensed version to #sales-leadership: total pipeline value, number of deals, and any deals expected to close this week.
Troubleshooting
**HubSpot API returning partial results:** The deals search endpoint paginates at 100 results. If you have more than 100 open deals, implement pagination by checking the "paging.next.after" field in the response and looping until all deals are fetched. **Stage names not matching:** Pipeline stages may differ between pipelines. Ensure you are filtering by the correct pipeline ID. If you recently renamed stages in HubSpot, update the stage-to-label mapping in your workflow. **Google Sheet formatting broken:** If the sheet tab already has data, clear it before writing. Use a "Clear Sheet" action before the write step. If formulas in other tabs reference this data, use named ranges so they survive the clear-and-rewrite cycle. **Email report not rendering correctly:** HTML tables in Gmail can break if you use unsupported CSS (Gmail strips most styles). Stick to inline styles and simple table markup. Test the email by sending to yourself first and checking on both desktop and mobile Gmail clients.

Need a custom version?

We can build a tailored automation workflow for your specific needs.

New blueprints weekly

Get notified when we publish new automation workflows.