Skip to content

HR Tech / Recruitment Events

HR Tech and recruitment platforms track a dual funnel — the hiring pipeline from job posting to offer acceptance, and the employee lifecycle from onboarding through engagement and retention. This event dictionary covers both sides, from the recruiter creating a job requisition through to the new hire completing their first performance review.


Events that track job creation, publishing, and distribution to candidates.

Event NameKey PropertiesVolumeDescription
job.createdjob_id, department, location, employment_type, recruiter_idLowRecruiter creates a new job posting
job.publishedjob_id, channels, visibility, salary_range_visibleLowJob posting goes live on the platform and job boards
job.updatedjob_id, fields_changed, update_reasonLowJob posting details are updated
job.closedjob_id, close_reason, days_open, applications_countLowJob posting is closed (filled, cancelled, or expired)
job.repostedjob_id, days_since_close, changes_madeLowPreviously closed job is reposted
job.viewedjob_id, source, viewer_type, referrerHighCandidate views a job posting
job.sharedjob_id, share_method, platform, sharer_typeMediumJob posting is shared externally by a candidate or employee

Events that track the candidate application funnel from start to submission.

Event NameKey PropertiesVolumeDescription
application.startedjob_id, candidate_id, source, device_typeHighCandidate begins the application process
application.step_completedapplication_id, step_name, step_index, total_stepsHighCandidate completes a step in the application form
application.submittedapplication_id, job_id, source, resume_attached, cover_letter_attachedMediumCandidate submits a completed application
application.withdrawnapplication_id, withdrawal_reason, stage_at_withdrawalLowCandidate withdraws their application
candidate.createdcandidate_id, source, channel, has_resumeMediumA new candidate record is created in the system
candidate.mergedprimary_id, merged_id, merge_reasonLowDuplicate candidate records are merged
resume.parsedcandidate_id, skills_extracted, experience_years, education_levelMediumResume is parsed and structured data is extracted
candidate.screenedcandidate_id, screening_type, result, screener_idMediumCandidate passes or fails an initial screening step

Events that track the interview and assessment pipeline.

Event NameKey PropertiesVolumeDescription
candidate.stage_changedcandidate_id, job_id, from_stage, to_stage, changed_byMediumCandidate moves between pipeline stages
interview.scheduledcandidate_id, job_id, interview_type, interviewer_ids, scheduled_dateMediumAn interview is scheduled
interview.rescheduledinterview_id, old_date, new_date, rescheduled_by, reasonLowA scheduled interview is moved to a new time
interview.completedinterview_id, duration_minutes, interview_typeMediumAn interview takes place
interview.cancelledinterview_id, cancelled_by, reason, notice_hoursLowA scheduled interview is cancelled
interview.no_showinterview_id, no_show_partyLowA party fails to attend a scheduled interview
interview.feedback_submittedinterview_id, interviewer_id, overall_rating, recommendationMediumInterviewer submits structured feedback
assessment.sentcandidate_id, assessment_type, deadline_dateMediumA skills assessment or test is sent to a candidate
assessment.completedcandidate_id, assessment_type, score, duration_minutesMediumCandidate completes a skills assessment
scorecard.submittedcandidate_id, job_id, scorer_id, overall_score, criteria_scoresMediumA hiring scorecard is submitted for a candidate
candidate.reference_requestedcandidate_id, reference_email, request_typeLowA reference check is requested
candidate.reference_receivedcandidate_id, reference_id, rating, response_time_daysLowA reference response is received
candidate.background_check_initiatedcandidate_id, check_type, providerLowA background check is started
candidate.background_check_completedcandidate_id, check_type, result, duration_daysLowA background check is completed with results

Events that track the offer and hiring process.

Event NameKey PropertiesVolumeDescription
offer.createdcandidate_id, job_id, salary, currency, equity, start_dateLowA job offer is drafted
offer.sentoffer_id, delivery_method, expiry_dateLowA job offer is sent to the candidate
offer.viewedoffer_id, view_count, time_spent_secondsLowCandidate views the offer details
offer.acceptedoffer_id, negotiation_rounds, days_to_acceptLowCandidate accepts the job offer
offer.declinedoffer_id, decline_reason, competing_offerLowCandidate declines the job offer
offer.negotiatedoffer_id, original_salary, negotiated_salary, fields_changedLowCandidate negotiates offer terms
hire.completedcandidate_id, job_id, time_to_hire_days, source, cost_per_hireLowCandidate officially becomes a hire

Events that track the post-hire employee lifecycle from onboarding through engagement and retention.

Event NameKey PropertiesVolumeDescription
employee.onboarding_startedemployee_id, department, manager_id, start_dateLowNew hire begins the employee onboarding process
employee.onboarding_task_completedemployee_id, task_name, task_category, days_since_startMediumNew hire completes an onboarding task
employee.onboarding_completedemployee_id, duration_days, tasks_completed, satisfaction_scoreLowNew hire finishes all onboarding tasks
employee.feedback_submittedemployee_id, feedback_type, sentiment_score, is_anonymousMediumEmployee submits feedback (pulse survey, eNPS, etc.)
employee.goal_setemployee_id, goal_type, time_frame, is_aligned_to_okrLowEmployee sets a performance goal
employee.goal_completedemployee_id, goal_id, completion_pct, days_to_completeLowEmployee completes a performance goal
employee.review_completedemployee_id, review_type, reviewer_id, overall_ratingLowA performance review is completed
employee.referral_submittedemployee_id, referred_candidate_id, job_idLowEmployee refers a candidate for an open role
employee.recognition_givenemployee_id, recipient_id, recognition_type, is_publicMediumEmployee gives recognition or kudos to a colleague

Events for requisition management, reporting, and compliance.

Event NameKey PropertiesVolumeDescription
requisition.createdrequisition_id, department, headcount, priority, budgetLowA hiring requisition is created
requisition.approvedrequisition_id, approver_id, approval_time_daysLowA hiring requisition is approved by leadership
pipeline.report_generatedreport_type, date_range, jobs_included, generated_byLowA pipeline or recruiting report is generated
diversity.metric_snapshotsnapshot_date, pipeline_stage, demographic_breakdownLowA point-in-time diversity metrics snapshot is captured


Instrument these events first to cover the core recruiting funnel and time-to-hire metrics.

// HR Tech / Recruitment — Top 10 events to instrument first
const HR_TECH_PRIORITY_EVENTS = [
"job.published", // Supply: role goes live
"job.viewed", // Demand: candidate shows interest
"application.submitted", // Pipeline: candidate applies
"candidate.stage_changed", // Pipeline: candidate progresses
"interview.completed", // Pipeline: interview happens
"interview.feedback_submitted", // Quality: structured evaluation
"offer.sent", // Conversion: offer extended
"offer.accepted", // Conversion: candidate commits
"hire.completed", // Outcome: hire is made
"employee.onboarding_completed", // Retention: new hire is ramped
];