Employee Directory
The Employee Directory (Settings → Employees) is your organisation's roster of active and inactive staff. It feeds the offboarding wizard so you can quickly select an employee when creating a new departure.
Adding employees
Individually
- Go to Settings → Employees
- Click Add Employee
- Fill in: Full name, work email, employee ID (optional), job title, department, phone (optional), GitHub username (optional)
- Click Save
Only Admins and Superadmins can add, edit, or remove employees - everyone else sees the directory as read-only.
Via CSV import
- Click Bulk Import
- Download the sample template
- Fill in your roster - required columns:
full_name,email; optional:job_title,department,phone,github_username - Upload the file
- Map each column from your file to the matching PurpletGo field - columns don't need to be in any particular order; PurpletGo auto-detects likely matches by header name and lets you adjust them before importing
- PurpletGo skips any rows with a duplicate email address (matched against the rest of your org's roster, not just the file)
CSV imports are additive - they never overwrite existing employees. Rows with a duplicate email, a missing name, or a missing/invalid email are skipped and listed individually in the import results so you can fix and re-upload just those rows. Bulk import is available on every plan.
Employee statuses
| Status | Meaning |
|---|---|
active | Currently employed |
inactive | Departed or deactivated |
An employee is automatically switched to inactive the moment their linked offboarding is marked completed - and switched back to active if that offboarding is later reopened.
Worker types
Worker type - Employee, Contractor, or Vendor - and an optional contract end date live on the offboarding record, not on the Employees roster described above. They're populated through the API or when an org has HRIS sync configured - there's no Worker Type or Contract End Date field in the Add/Edit Employee form on this page, and the Employees roster itself doesn't store them at all. On an employee's detail page (once an offboarding exists for them), Worker Type shows up as a read-only badge. Where they matter is contract expiry: if a contractor or vendor has a contract end date and it arrives while they're still active, PurpletGo automatically opens an offboarding for them that day, using a lighter contractor-specific checklist (skipping payroll/benefits steps) when no other template has been configured to handle it.
Plan limits
Your plan controls how many active people your directory can hold. Contractors and vendors count; someone whose offboarding is complete, or whose data was erased, stops counting, so a leaver never takes up room:
| Plan | Included employees | Can grow to |
|---|---|---|
| Starter | 50 | 100, at $2 per extra employee per month |
| Team | 250 | 500, at $1.50 per extra employee per month |
| Enterprise | Unlimited | - |
A sub-organization uses its parent's plan and limits, and is never billed for extra employees.
How extra employees are billed
- Billed monthly: extra employees are on your monthly invoice. A change during the month is prorated: a charge for the rest of the month when the number goes up, a credit when it goes down.
- Billed annually: an extra employee costs 12 times the monthly rate, a year at a time ($24 on Starter, $18 on Team). Each change is charged within a month, on an invoice of its own, for the rest of your billing year; a decrease is a credit. Your renewal charges the next year at the number then.
- During the trial: nothing is billed. Settings > Billing and the plan picker show what your extra employees would cost on each plan.
- The first time extra employees are billed, your Super Admins get an email with the numbers. Settings > Billing always shows the current count and monthly amount.
The directory shows a running count of active employees (e.g. "12 of 50 active employees included in your plan") and warns you once you hit the ceiling. Bulk imports that would exceed your limit only import as many rows as you have room for - the rest are skipped and reported back so you know exactly who didn't make it in. HR system syncs, SCIM provisioning and Azure AD imports stop at the limit too: they keep updating people already in your directory, but add no new active people past 100 (Starter) or 500 (Team). The people they could not add are listed in the sync result (SCIM answers your identity provider with an error), and your admins get a notification with an upgrade link, at most once a day.
Editing & deleting
Click the pencil icon next to any employee to edit their details. Click the trash icon to delete. Both actions require Admin or Superadmin access, and both icons only appear for employees whose status is active - inactive employees have no edit/delete controls in the table.
Deleting an employee from the directory does not delete any associated offboardings. Offboarding records are preserved for audit purposes.