Archiving and Reactivating Clients

Soft-delete a client from your roster while preserving their full history.

trainer guide/clients
What this is for: Remove a client cleanly without losing data — and bring them back if they return.

What "remove" actually does

When you click the trash icon on a client row, EvoFit performs a soft archive (not a hard delete):

  • The TrainerClient relationship is marked status='archived' and archivedAt is set.
  • The client's user account, workout history, measurements, and photos all stay intact.
  • The client falls out of your default /clients view.
  • The client's app continues working — they just no longer have you as a trainer connection.

Why soft-archive instead of hard delete?

Three reasons:

  1. Coaching relationships often resume — you don't want to lose history.
  2. Compliance — measurements and PAR-Q answers may need to be retained.
  3. The pattern matches Trainerize and Everfit, so it feels familiar.

Step-by-step: Archive one client

  1. On /clients, hover the row of the client you want to remove.
  2. Click the trash icon (aria-label "Remove {name} from roster").
  3. A confirmation prompt appears.
  4. Confirm. The row disappears from your default view; a toast confirms.

Step-by-step: Reactivate an archived client

  1. On /clients, change the status filter to Archived. The archived clients now show.
  2. Find the client row you want back.
  3. Either:
  • Use the edit pencil to open ClientModal and set status back to Active, OR
  • Use the bulk toolbar: tick the checkbox, pick Active in the status dropdown, click Apply.
  1. Their relationship is reactivated. All their old data is still there.

Bulk archive

Use the bulk toolbar for multiple at once. See Bulk Operations.

What the client sees while archived

  • Floating WhatsApp button no longer points to you.
  • Programs you assigned remain readable as legacy on their dashboard but no new content from you appears.
  • They can still log in and use the app.

Where archived clients are hidden

As of 2026-04-29 (commit fadf14c), archived clients are hidden everywhere by default — every selector, picker, and dashboard list. To see them, use one of:

  • /clients?status=archived — the dedicated archive view.
  • /clients?status=all — every client at every status (admin-leaning view).

Selectors that hide archived by default:

  • /schedule multi-select roster filter.
  • /analytics ClientSelector.
  • BulkAssignDialog and BulkAssignmentModal on programs.
  • /clients default list view.

Common pitfalls

Where to find this

  • Trash icon: /clients → row hover → trash icon.
  • Archive view: /clients?status=archived.
  • Bulk archive: /clients → checkboxes → BulkActionsToolbar status → Archived.
  • API: DELETE /api/clients/[clientId] (archive) and PATCH /api/clients/[id]/status (reactivate).

Related

Was this article helpful?