Importing at the Admin level lets you place contacts across multiple teams in a single import. The import flow now asks you to pick a destination before you upload your file, so every contact has a defined owner — either a team, a specific member, or a lead routing policy that distributes them for you.
Step 1: Open the Import page
From your dashboard, navigate to the "Import" tab in your sidebar. Your "Import History" lists every previous and pending import.
Click the pink "Import" button in the top right and select "Import from file."
Step 2: Choose where your contacts should go
The upload screen opens with the question "Where should these prospects go?" and two destination cards. Pick one before you do anything else — the "Next" button stays disabled until a destination and a file are both set.
Assign to a team — All imported contacts go to the team you select. You can layer a routing policy on top of that team or select a specific user to assign all contacts to.
Use a lead routing policy — Contacts are distributed by the policy's rules, such as Round Robin or Weighted Distribution, including any routing conditions and fallback users the policy defines.
If you chose "Assign to a team"
- Select a team from the "Team" dropdown.
- Choose how contacts are distributed inside that team. Two collapsible rows appear:
- "Add a lead routing policy" — apply Round Robin or Weighted Distribution across the team.
- "Assign to a user" — send every contact to one member instead.
- Pick one. Selecting a policy hides the user option, and selecting a user hides the policy option. Until you choose, a blue notice reminds you: "Choose a lead routing policy or assign a user above before continuing."
If you chose "Use a lead routing policy"
Select a policy from the "Lead routing policy" dropdown. Only policies with an Active status appear in the list.
Once selected, a policy card replaces the dropdown and shows the policy name, its description, the number of assignees, the number of rules, and its distribution method. Use "Edit" to adjust the policy in a side panel without leaving the import, or "Remove" to pick a different one.
Building a policy during the import
If the policy you need doesn't exist yet, click "Create a new policy" at the bottom of the policy dropdown. A side panel opens where you name the policy, add assignees, set the distribution method, and define conditions and fallbacks. Save it and the policy is selected for this import automatically.
Step 3: Upload your file
Drag your file into the drop zone or click to browse. When the file is accepted, a green confirmation card shows the file name and size with a "Remove file" link if you picked the wrong one.
Below the drop zone, set your file handling options:
- "File contains column names" — skips the first row during import. Leave this checked when your first row holds column headers.
- "Merge duplicates" — merges contacts found on the file based on phone number and/or email rather than creating separate records.
- "Show advanced settings" — reveals delimiter, enclosure, and escape character options for CSV files that aren't comma-separated.
A summary line at the bottom left confirms your destination — for example, "Routing to Northwest Team · policy Round Robin Q1" — before you click "Next."
Step 4: Map your fields
The "Map fields" step lists each column in your file with a sample value from the first row and a dropdown for the Bonzo field it maps to. Bonzo pre-matches columns whose names line up with its own fields.
To work through a large file:
- Use the "All," "Mapped," and "Unmapped" tabs to filter. Each tab shows a live count.
- Use the search box to find a specific column by name.
- Set any column you don't want to bring in to "— Don't Import —."
The footer tracks your progress as "X of Y columns mapped." "Discard Import" cancels the import and clears your progress after a confirmation prompt.
Assigning contacts by email address
Map your "Assignee" column to "Assignee (by email)" to route contacts directly to members across teams in your organization. Your spreadsheet must include a column of the email addresses members use to log in to Bonzo.
Keep this in mind when a routing policy is attached: the policy decides who each contact lands with, so it takes precedence over an "Assignee (by email)" column. Use "Assignee (by email)" when you are assigning to a team or a single user, and use a policy when you want Bonzo to distribute for you.
Step 5: Adjust your settings
The settings step is grouped into three sections.
Pipeline & campaign — Optionally drop contacts into a pipeline stage and enroll them in a campaign. If the policy you selected already sets a pipeline stage or campaign, a blue notice replaces that field and tells you which policy is handling it. Click "Edit Policy" in the notice to change it.
Sharing & classification — Choose shared users, add tags, and set duplicate resolution. Shared users is disabled when your policy spans multiple teams, with a note explaining why.
Duplicate resolution controls what happens when an imported contact already exists:
- "Update existing prospect" — updates the record and leaves ownership alone.
- "Update and reassign to new user" — updates the record and transfers it to the owner listed in your file.
- "Skip duplicates" — leaves the existing record untouched.
Additional options — Two paid services you can apply to each contact:
- "Run DNC scrubber" (1 token per prospect) — checks each number against the National Do Not Call Registry and opts out matches. You'll confirm a disclaimer before this turns on.
- "Run enrichment" (15 tokens per prospect) — adds data from Bonzo's data providers.
Step 6: Review and start the import
The final step summarizes the import before anything is processed.
If you enabled the DNC scrubber or enrichment, a "Token spend breakdown" shows the cost per service, your row count, and an estimated total. Final spend is calculated per row at processing time, so failed lookups don't count against you.
"Configuration review" lists the file row count, routing destination, file handling, field mapping count, campaign, pipeline stage, shared users, tags, duplicate resolution, and enhancements.
Check both confirmation boxes — one confirming you reviewed the mapping and settings, one agreeing to TCPA and applicable messaging law — then click "Start import."
Step 7: Check the results
Once the import finishes, the status page shows which contacts imported successfully and which did not, with a reason for each failure. This status is visible only to you at the Admin level.
Rows can fail for a reason tied to routing: if a contact carries a tag your policy excludes, the row is skipped and reported as "Excluded by lead routing policy tag." Review your policy's exclusion tags if you see more skipped rows than you expected.
Step 8: Import on behalf of a team (optional)
Admins can impersonate a Team Lead and import at the team level.
- Click "Teams" in your sidebar and select the team.
- Click the Team Lead, or a member with import permissions.
- Scroll right, click the three dots, and select "Impersonate."
- In their account, click "Import" under the "Data" dropdown in the sidebar.
Team Leads see a slightly different set of destination cards — "Assign to a user" and "Use a lead routing policy" — since they are already scoped to their own team.
Tips & Best Practices
Prepare your spreadsheet
- Export data fields: Use the Quick Action Toolbar in the People tab to export Bonzo's standard column headers. Matching your headers to Bonzo's speeds up mapping.
- Cell phone numbers only: The phone column should contain cell numbers. Put landlines and secondary numbers in "Additional Phone."
- Assignee column: Include an "Assignee" column with members' login email addresses when you're assigning directly rather than routing by policy.
- Clean data: Remove duplicates before importing unless you intend to handle them with duplicate resolution.
Working with policies
- Only Active policies appear in the import dropdown. Activate a policy in Settings before you start an import that needs it.
- Check a policy's assignee count and rules on the policy card before you import — a policy with no available assignees falls back to whatever the policy defines.
- A policy that spans multiple teams can move contacts to the assignee's team. Use one when you want a single import distributed across your organization.