Weekly Breezy HR funnel health report in Notion and Slack

By General Input

Every Monday at 8am, publish a structured weekly report of pipeline health, hiring velocity, and stage bottlenecks to Notion, with a short summary in Slack.

Integrations

  • Breezy HR
  • Notion
  • Slack Bot

Type

Agentic Task

Categories

  • HR & People
  • Operations

Every Monday at 8am, build a weekly hiring funnel intelligence report from Breezy HR, publish it as a new page in a Notion database, and post a short summary to a designated Slack channel. The Notion page is the canonical artifact; the Slack message is the nudge to go read it.

Trigger: cron, every Monday at 8am in the user's timezone.

Step 1: Pull the data from Breezy HR. Call List Positions with state=published to enumerate every open role. For each role, call Get Pipeline to fetch the stage definitions, then call List Candidates for Position to fetch the candidates currently on that role. Use the candidate stage timestamps to figure out how long each candidate has been sitting in their current stage.

Step 2: Reason over the data. For each open role compute candidates per stage, stage-to-stage conversion (what fraction of candidates that entered stage A advanced to stage B), and median time-in-stage. Flag any stage where the median time-in-stage exceeds a configurable threshold (default 7 days) or where the count has piled up with zero advances in the last week. Across all roles, surface the top 2 to 3 bottlenecks, name the specific roles that are stalling, and write a plain-English recommended action for each (for example: "Senior PM has 14 candidates in screen but 0 advanced this week, recruiter should triage today").

Step 3: Write the report to Notion. Use Create a Page with a Notion database as the parent. The page title should include the week (for example "Hiring funnel - week of Mon Jun 16"). Structure the body with three sections: Funnel health (per-role candidate counts by stage and conversion rates, formatted as readable tables or bulleted blocks), Hiring velocity (median time-in-stage per role, week-over-week trend if available, total candidates advanced this week), and Recommended actions (the top 2 to 3 named bottlenecks with the suggested intervention). Keep the formatting clean and skimmable.

Step 4: Post the Slack summary. Use Slack Bot Send a Message to a designated channel. Keep it short: the week label, the top 3 headlines (one line each, naming the role and the issue, e.g. "Senior PM stuck at screen, 14 candidates, 0 advanced"), and a link to the Notion page that was just created. Do not dump the full report into Slack.

Configurable inputs to expose: the Notion database id for the weekly report, the Slack channel id (or name), the time-in-stage threshold in days (default 7), the day and time of the cron, and an optional role filter (for example only roles tagged with a certain department) in case the user wants to scope this to part of the org.

Notes for the build: Breezy HR is API-key style auth (email and password exchanged for a session token); company_id is needed for the Breezy calls so resolve it once at the start. Notion pages must be created under a database the integration has been shared with, so make that requirement clear in setup. Use Slack Bot (not the user Slack integration) so the message is attributed to the workspace bot. Stay resilient to roles that have no candidates yet (just note them as empty rather than failing).

Related prompts

Explore more prompts
A brand asset library your marketing team actually searchesTurn Mailjet email clicks into ranked HubSpot follow-upsClean out the Looker dashboards and Looks nobody opensLiveKit live operations console for room moderationWake up dormant Keap leads with a researched reasonLiveChat coverage board for planning next week's shiftsPhone routing control panel for LiveKit voice agentsLinkedIn Ads budget pacing dashboard for every client accountGive your team Looker numbers without buying more seatsPause marketing emails to escalated customers, then restore them