ToolsTemplate Library · Zendesk · Import

Zendesk Bulk User Import template.

Column layout for bulk-importing end users and agents — matches Zendesk's documented CSV import format, with rows showing each role.

Download the CSV Free · 9 columns · 4 pre-filled rows · updated July 2026

What's inside — the exact file

This is the complete template, not a sample. The rows are worked examples — replace them with your data (and delete them before any platform import).

nameemailexternal_idphoneroleorganizationtagsdetailsnotes
Jane Examplejane@example.comEXT-1001+1 555 0100end-userExample Corpvip import_2026Prefers emailImported from legacy desk
Sam Samplesam@example.comEXT-1002+1 555 0101agentExample Corptier2
Ada Adminada@example.comEXT-1003adminExample Corp
Minimal Rowmin@example.comend-userOnly name email and role are required

What this template is for

This template is the starting file for bulk-loading people into Zendesk — end users, agents, and admins — during a new implementation, a migration from another help desk, or a periodic sync from an HR or CRM export. Its columns match Zendesk's documented CSV user-import format as of July 2026, so the file maps cleanly instead of forcing you to rename headers at upload time.

Use it when you have more than a couple dozen people to create at once. Below that, manual entry is honestly faster; above it, a clean CSV is the difference between a five-minute import and an afternoon of deduplication. The example rows model the three shapes you'll actually load: a fully-populated end user, an agent, and a minimal row carrying only the required fields.

How to use it, step by step

  1. Export your source list. Pull people from your old help desk, CRM, or HR system as CSV. Get every field you can — you can always drop columns, but re-exporting mid-import is where mistakes creep in.
  2. Fit your data to the template columns. Copy your data under these headers. Only name, email, and role are strictly required — leave cells empty rather than inventing values, and keep one person per row with a unique email.
  3. Set roles deliberately. Every row needs end-user, agent, or admin. Agents consume paid seats the moment they land, so import end users first and load your agent list separately once seat counts are confirmed.
  4. Use external_id to future-proof the sync. Carry your source system's record ID in external_id. It makes re-imports update existing people instead of duplicating them, and gives integrations a stable key forever after.
  5. Delete the example rows and import. Remove our four placeholder rows, then upload in Zendesk's Admin Center under People → Bulk actions. Zendesk emails you a results summary — read it, because it lists every rejected row.
  6. Spot-check before going wide. Import a 10-row test batch first. Verify tags, organization matching, and role assignment on those ten before committing the full file.

What each column means

nameThe person's display name as agents will see it on tickets. Required.
emailPrimary email and the de-facto unique key — duplicate emails are rejected. Required.
external_idYour source system's record ID. Optional, but the key to clean re-imports and integrations.
phoneDirect phone in international format. Feeds caller ID matching if you use Zendesk Talk.
roleend-user, agent, or admin. Agents and admins consume paid seats immediately.
organizationOrganization name, matched by exact name against existing organizations — import organizations first.
tagsSpace-separated tags applied to the user. Handy for marking import batches (e.g. import_2026).
detailsFree-text details visible on the user profile — address, preferences, account notes.
notesInternal notes visible to agents only. Good for migration provenance.

Common mistakes to avoid

  • Importing agents with the wrong role and silently consuming paid seats — Zendesk activates agent seats on import, not on first login.
  • Loading users before organizations, so the organization column matches nothing and every user lands unattached.
  • Leaving our example rows in the file — Jane Example will happily become a real end user.
  • Re-importing without external_id and creating a duplicate person for every update.
  • Mixing delimiters or encodings — save as UTF-8 CSV; Excel's regional settings are the usual culprit when an import half-fails.

Questions, answered

Does this match Zendesk's official import format?

The columns follow Zendesk's documented CSV user-import layout as of July 2026. It's a Market Disrupt worksheet, not a vendor file — Zendesk evolves, so validate against their current import docs before a large load.

What's the minimum I need per row?

Name, email, and role. Everything else is optional — and an empty cell is always safer than a guessed value, because you can enrich later but deduplicating is painful.

Will re-importing the same file create duplicates?

Zendesk matches on email, so identical emails update rather than duplicate. The safer pattern is carrying external_id from day one, which keeps updates clean even when emails change.

This is a Market Disrupt worksheet, not a vendor file. Import-format templates follow each platform's documented layout as of July 2026 — platforms evolve, so validate against current documentation before a large import.

Rather have it done than downloaded?

Imports, migrations, and workflow buildouts are the day job — we're a Zendesk Premier Partner, and the same team that made this template runs the real thing.

Talk to a Zendesk Premier Partner