Back to Employee Satisfaction & Pulse Surveys

Process Runbook / SOP

How the automation works day-to-day: what is automatic, what needs a human, how exceptions are handled, and who to contact.

4 pagesPDF · Operations
FS-DOC-03Operations

Process Runbook / SOP

Employee Satisfaction and Pulse Surveys

[YourCompany.com] · HR Department · Prepared by FullSpec · [Today's Date]

This runbook is the day-to-day operational guide for the HR team running the automated Employee Satisfaction and Pulse Survey process. It covers how the process works from trigger to report delivery, what your team needs to do at each stage, how to handle things when they go wrong, and who to call when you need help. FullSpec has built, tested, and monitors the automation end to end. Your only regular task is a short review of the Notion report before it reaches leadership.

01Process overview

The Employee Satisfaction and Pulse Survey process runs on a set schedule, typically a weekly pulse or monthly full survey, and is triggered automatically when the scheduled date is reached or when a new hire's 30-day mark arrives in BambooHR. From that point, two agents handle everything: the Survey Distribution Agent pulls the employee list, sends personalised invitations, tracks responses, and fires a single reminder to anyone who has not yet responded. Once the survey window closes, the Response Analysis Agent aggregates all responses, calculates eNPS and category scores, benchmarks them against the previous cycle, and drafts a narrative summary in Notion. HR's only action is a 15-minute review of that Notion page before the report is distributed to leadership via Slack and Gmail. The full cycle, which previously consumed four to six hours of HR time per run, now takes under thirty minutes.

Process name
Employee Satisfaction and Pulse Surveys
Trigger
Scheduled survey date reached, or new hire's 30-day mark recorded in BambooHR
Final output
Notion report page distributed to leadership via Slack and Gmail, with eNPS scores, category breakdowns, trend commentary, and flagged departments
Agents running
Survey Distribution Agent; Response Analysis Agent
Tools involved
BambooHR, Typeform, Gmail, Google Sheets, Notion, Slack
Weekly volume
Approximately 4 survey cycles per month, covering 40 to 150 employees each cycle
Human checkpoint
HR Manager reviews and approves the Notion report before it is sent to leadership (approximately 15 minutes)
Process owner
[Your name], HR Manager
Process Runbook / SOPPage 1 of 4
FS-DOC-03Operations

02Step-by-step: what happens and who acts

What you actually need to do: Your only required action in the entire process is Step 8 below. When the survey window closes, the automation builds the Notion report and sends you a Slack notification with a direct link. Open the report, read through the AI-drafted narrative, add any context you feel is missing (especially for sensitive scores), and click Approve. The report will not go to leadership until you have done this.
Step
What happens
Who acts
Type
1
The scheduled trigger fires on the configured survey date, or BambooHR signals that a new hire has reached their 30-day mark. This starts the survey distribution sequence automatically with no manual input needed.
Automation
Automated
2
The Survey Distribution Agent calls the BambooHR API to fetch the current list of active employees, filtering out contractors, leavers, and anyone excluded from this survey group by the configured rules.
Automation
Automated
3
Personalised survey invitation emails are sent to every employee on the list via Gmail, each including the employee's first name and a unique Typeform survey link. Every invitation sent is logged to the response tracking tab in Google Sheets.
Automation
Automated
4
At a set interval after the launch date, the automation queries Typeform to identify which employees have submitted a response. It cross-references the invited list in Google Sheets to build the non-responder list in real time.
Automation
Automated
5
Employees who have not yet responded receive a single automated reminder email via Gmail. The reminder is sent only once to avoid over-contacting staff. A Slack message is posted to the HR channel showing the current response rate.
Automation
Automated
6
When the survey window end date is reached, or when HR manually closes the survey in Typeform, the Response Analysis Agent exports all responses from Typeform and writes them into a structured Google Sheets tab. Pre-built scoring formulas calculate eNPS, category averages, and department breakdowns automatically.
Automation
Automated
7
The Response Analysis Agent compares current scores against the previous cycle's data in Google Sheets, identifies meaningful shifts, and uses an AI model to draft a plain-English narrative summary. The completed draft, including scores, trends, and any departments flagged below threshold, is written into a new Notion report page.
Automation
Automated
8
HR receives a Slack notification with a direct link to the Notion report. The HR Manager opens the page, reads the AI-drafted narrative and scores, adds any human context required for sensitive findings, and approves the report for distribution. This step takes approximately 15 minutes and cannot be skipped.
HR Manager
Human
9
Once HR approves the report, the automation posts the Notion report link and a short summary to the designated leadership Slack channel and sends the same content via Gmail to the configured leadership distribution list. The survey cycle is complete.
Automation
Automated
Process Runbook / SOPPage 2 of 4
FS-DOC-03Operations

03Handling exceptions

Situation
What the system does
What you do
BambooHR returns an incomplete or empty employee list
The automation detects that the list is below the expected minimum employee count and pauses the distribution sequence. A Slack alert is sent to the HR channel noting that the employee pull returned fewer records than expected, with the count returned.
Check BambooHR for any recent data issues, such as a bulk status change or a permission change on the API key. If the list looks correct in BambooHR but the count is still wrong, contact FullSpec support at support@gofullspec.com before manually relaunching the cycle.
An employee appears on the invited list twice due to a duplicate entry in BambooHR
The automation applies a deduplication check on employee email addresses before sending invitations. If a duplicate email is found, only one invitation is sent and the duplicate record is flagged in the Google Sheets log with a note for review.
Review the flagged rows in the Google Sheets response log after the cycle completes. Correct the duplicate record in BambooHR so it does not recur in the next cycle. No action is needed on the survey itself.
A survey response is missing key fields or comes through incomplete
Typeform's API does not export partially completed responses, so the automation will treat any employee who started but did not finish as a non-responder. Completed responses with one or two blank fields are exported and included in scoring, with blank fields recorded as null in Google Sheets.
No immediate action is needed. If a significant share of responses appear incomplete after the cycle closes, check the Typeform form for questions that may be unclear or mandatory fields that are causing abandonment. Flag this to FullSpec support if the pattern repeats.
HR does not approve the Notion report within 24 hours of the review notification
The automation sends a follow-up Slack reminder to the HR channel after 24 hours if the report has not been approved. After 48 hours with no action, a second reminder is sent and the process owner is notified by email.
If you are unavailable, delegate the review step to another HR team member who has Notion access and is familiar with the scoring thresholds. Contact FullSpec support if you need the approval window extended or the notification recipient changed.
Typeform is unavailable or the webhook does not fire at survey close
If the Typeform API does not respond within the configured timeout, the automation logs the error and retries up to three times over 30 minutes. If all retries fail, the Response Analysis Agent pauses and sends a Slack alert to the HR channel with details of the failure.
Wait for the retry window to complete before taking any manual action. If the alert confirms that Typeform is still unavailable after retries, log into Typeform directly and manually export the CSV response file. Forward the file to support@gofullspec.com and the FullSpec team will import it into Google Sheets to resume the analysis step.
The AI-generated Notion narrative contains inaccurate or inappropriate content
The automation does not distribute the report until HR approves it. The narrative is always a draft. No content reaches leadership automatically.
Edit the Notion page directly before approving. You can rewrite any section, adjust the tone, or remove content that does not reflect the full context. If the narrative is consistently off, note the specific issues and raise them with FullSpec support so the AI prompt can be refined.

04Who to contact and when

Fill in the rows marked with placeholders once your team is confirmed. The FullSpec rows are fixed and do not need to be edited. Share this completed table with anyone who might need to act during a survey cycle.

Role
Name
How to reach them
Process owner (HR Manager)
[Your name]
[Your email or Slack handle]
Cover for HR review step
[Backup HR contact]
[Backup email or Slack handle]
Operations Director (escalation)
[Ops Director name]
[Ops Director email]
BambooHR admin (API or access issues)
[BambooHR admin name]
[BambooHR admin email]
Typeform account owner (form or plan issues)
[Typeform account owner]
[Typeform account email]
FullSpec builder
FullSpec team
support@gofullspec.com
FullSpec support
FullSpec support
support@gofullspec.com
For any issue where the automation has paused, a Slack alert has fired, or a report has not been delivered at the expected time, contact FullSpec support at support@gofullspec.com as the first step. Include the date of the affected survey cycle and a screenshot of the Slack alert if one was sent.
Process Runbook / SOPPage 3 of 4
FS-DOC-03Operations

05Ongoing maintenance

When
What to do
Who
Whenever the employee list changes significantly (new hires, leavers, restructure)
No action is usually needed, as the BambooHR API pull is live and fetches the current active employee list at the start of each cycle. However, if employment status fields in BambooHR are not updated promptly, departed employees may still appear on the invite list. Confirm with your BambooHR admin that offboarding status changes are applied in BambooHR before the next survey date.
HR Manager and BambooHR admin
Whenever survey questions are updated in Typeform
After editing questions in Typeform, notify FullSpec support so the Google Sheets scoring schema and any AI prompt references to specific question fields can be updated to match. Do not rename or delete existing question fields mid-cycle, as this will break the response aggregation step.
HR Manager notifies FullSpec support
Monthly spot-check (first Monday of each month)
Open the Google Sheets response log and confirm that the most recent cycle logged the correct number of invitations sent, responses received, and reminder records. Spot-check two or three individual rows to confirm names and emails are correct. Review the Notion report for the most recent cycle and confirm the narrative accurately reflects the scores.
HR Manager
Monthly error-log review
The automation platform writes a structured error log to a designated Google Sheets tab after each cycle. Review this tab for any rows with a status other than success. Common entries include failed Gmail sends, Typeform API timeouts, and BambooHR records with missing email fields. Forward any unresolved errors to support@gofullspec.com.
HR Manager, escalate to FullSpec support
When a team member changes role or leaves
Update the contact table in Section 04 of this runbook. If the departing person was the designated Notion reviewer, update the approval notification recipients with FullSpec support so the Slack and email alerts go to the correct person before the next cycle runs.
HR Manager notifies FullSpec support
Quarterly volume review (every three months)
Review the total number of survey cycles run, average response rates, and any recurring exceptions logged over the quarter. Compare against the target response rate of 74 percent. If employee count has grown beyond 150 or survey frequency has changed, contact FullSpec to confirm the current configuration can handle the updated volume without hitting Gmail sending limits or Typeform API rate limits.
HR Manager and FullSpec team
The single most common maintenance issue for this process is Typeform question edits that are not communicated to FullSpec before the next cycle runs. If a question is renamed, reordered, or deleted in Typeform without updating the Google Sheets scoring schema, the Response Analysis Agent will either produce blank columns or calculate scores against the wrong fields. Always contact support@gofullspec.com before making structural changes to the Typeform survey.
Process Runbook / SOPPage 4 of 4

More documents for this process

Every document generated for Employee Satisfaction & Pulse Surveys.

Launch Plan
Operations · Owner
View
ROI and Business Case
Finance · Owner
View
Developer Handover Pack
Technical · Developer
View
Integration and API Spec
Technical · Developer
View
Test and QA Plan
Quality · Developer
View