Invite your team
PerfCopilot needs to know who you manage before it can pull signals and generate reviews for them. There are three ways to add people, depending on where their data lives.
Add manually
Easiest path for small teams. Go to /admin?tab=team and click Add employee. You'll set:
- Full name and work email (required)
- Role — their job title, e.g. "Senior Engineer" — used as context in review prose
- Department — used for cohort baselines (peer comparisons)
- Manager — defaults to you; change if you're adding someone else's report
- Active — uncheck to keep the record but exclude them from reviews
Each employee added this way receives a "Welcome" email with a magic-link to set their own password. They're auto-treated as email-verified since you vouched for them.
Import from CSV
For bigger teams, click Import from CSV / CRM on the same page. Upload a CSV with columns:
full_name,email,role,department,manager_email,start_date
manager_email is matched to existing employees in your org — if a row references a manager who isn't in the org yet, that row is skipped (you'll see it in the import summary). Re-run the import after the manager is added to pick up the skipped rows.
Pull from your HRIS or directory
If you use BambooHR, 15Five, Lattice, Microsoft 365, or Google Workspace, PerfCopilot can sync the org chart automatically:
- Microsoft 365 (recommended) —
/admin?tab=integrations→ Microsoft Graph → Connect. Pulls employees, manager relationships, and start dates. Updates on every cycle's Sync All. - BambooHR / 15Five / Lattice — same tab, separate cards. Each requires an API token from the source system; the card's Connect button walks you through it.
- Google Workspace — domain-wide delegation; requires admin help once. Once wired, syncs the directory like the M365 path.
After connecting, click Sync now on the integration card to pull the current state of the directory. New employees show up in your team list with their manager relationship populated.
Email verification
Anyone you add (manually, by CSV, or via HRIS sync) starts as email-verified — you vouched for them by adding them. They can sign in immediately after setting their password from the welcome email.
Self-signups (someone landing on /signup directly) start as unverified and have to click a verification link before they can do anything reviewable.
Reactivating someone
When a person leaves the team, deactivate them rather than deleting (/admin?tab=team → row menu → Deactivate). Deactivated employees:
- Don't appear in cohort baselines
- Don't get peer-feedback nominations sent in new cycles
- Keep all their historical signals and reviews intact (auditable forever)
You can reactivate later if they return — the row is preserved.