Import a contact list and check the result
Prepare a CSV, review its columns and destination, then read written rows, duplicates, refusals and unknown results before retrying.
Decide what your list is for#
Open Settings → Imports in the workspace you intend to use. This tutorial follows the CSV route: prepare the file, check its columns, choose where the people go, review the import and read its result.
Choose the destination before you start:
| Your intention | Destination | What it means |
|---|---|---|
| Save contacts so you can review them | Into your contacts | Records can be saved or updated without sending a message |
| Add people to a configured campaign | Straight into a campaign | Eligible people are enrolled; outreach can follow under the campaign's schedule, settings and permissions |
Importing contacts does not establish an Introduction or prove that anybody wants to talk. An Introduction requires willingness to talk and your required criteria. You do not need a list to begin defining your objective; Kite can help identify the right people. See Start with your objective.
Prepare the CSV#
Use a CSV file with one header row and one person per data row. The current native file picker accepts CSV, not an Excel workbook. Export the intended worksheet as CSV rather than renaming an .xlsx file.
For Into your contacts or an email campaign, include valid email addresses. SMS and LinkedIn campaign destinations require their own phone or person-profile field; an email address alone does not satisfy those destinations.
Use recognisable headings and verify the values beneath them:
| Column | Check before choosing the file |
|---|---|
| Name, or First Name and Last Name | The values identify the person |
| Work Email | The cells contain email addresses rather than a contact status or notes |
| Company | A company name belongs in the company field |
| Phone or LinkedIn profile | Include the contact key required by your intended channel |
| Your own fields | Keep only useful context that you are authorised to store |
Keep commas inside a cell properly quoted by your CSV exporter. For example, a company name containing a comma should remain one company value when the file opens. Remove empty data rows and check the first and last records.
The picker accepts up to 25 MB, 200,000 data rows and 1,000 columns, but one background import processes at most 100,000 usable rows. A file accepted by the picker is not a promise that every row will be written. Keep batches within that processing limit and check each result.
Remove private information before upload#
Use a list you are authorised to store and use in the intended workspace. Keep passwords, tokens, payment information and unnecessary private notes out of the file. Saving a contact does not grant permission to contact them; do-not-contact choices and applicable outreach permissions still matter.
Remove unnecessary private columns from the source CSV before choosing it. Do not bring it in controls which fields become contact data, but it does not remove those values from the raw file uploaded at the final step.
Keep the original file in an approved place so you can reconcile a result or deliberately retry. Do not put contact files, account identifiers or private screenshots into a public University page or an agent's public citation.
Open the import controls#
- Confirm the workspace name.
- Open Settings → Imports.
- Select Import people.
- Choose A spreadsheet, then Choose a CSV file.
The file is read on your machine for the column review. Choosing it and checking the mapping do not start the import. Upload preparation and background processing begin after the final Bring them in action.
If the file cannot be read, check its format, size and structure. Do not rename another file type to .csv, remove a control or switch to another identity to force it through.
Bring people in shows the spreadsheet source, Choose a CSV file and the picker limits before any file is selected.
Check every column#
In The columns, read the values as well as the headings. A guessed field is a starting point; check it against the actual data.
- Map Work Email to Email address when that is where the addresses are.
- Map names and company values to their matching fields.
- Use Keep it as my own field for useful context you intend to retain.
- Use Do not bring it in for a field you do not want written to contacts.
In the mapping shown here, Last Contact remains an own field and Internal Notes is left out. The notes in this walkthrough are preparation labels; remove any private information from your actual CSV before upload.
If the first row appears to contain a person rather than headings, stop and add a header row. That first row can otherwise be consumed as headings and left out of the contacts. Choose the corrected file again and check the mapping. The warning does not establish that every column has shifted one position.
The column mapping sends Name to Full name, Work Email to Email address, Company to Company name and Last Contact to an own field.
Choose the destination deliberately#
Select Into your contacts when you want to save or update records for review. This action does not send a message or start a mission.
Select Straight into a campaign only when enrollment is your intended action. Check Which campaign, the required contact field, the campaign's current schedule, settings and permissions. Do not rely on a promise that enrollment cannot lead to immediate outreach.
People may be refused by the campaign's admission rules, including do-not-contact, eligibility or required approval. Saving a person in contacts does not prove they can be enrolled, and removing a refusal does not grant permission to contact them.
Where to has Into your contacts selected and a separate campaign enrollment option with schedule and settings guidance.
Review before bringing people in#
Read Bring them in before confirming. Check the filename, row count, destination, columns brought in and columns left behind. Existing contact fields may be updated. Duplicate rows within a CSV are ignored after the first usable occurrence in the file; this does not mean the duplicate count measures existing workspace contacts updated.
Use Back to correct the choices or Cancel to leave without submitting. Select the final Bring them in button only when you intend to upload the file and start the import into that destination.
A returned import record or a running status establishes that a request was recorded. It does not prove that all the people were written. Keep the record and read its outcome.
Bring them in review shows business-contacts.csv, three rows, four retained columns and one omitted column, with Back and Cancel controls.
Read the recorded outcome#
Open the relevant row in Imports. Check the source, destination, status, written rows, duplicate rows, refusals and any rows left unprocessed. The separate campaign record shown below demonstrates how to read these counts; it is not the result of the three-row CSV reviewed above.
| Result | How to use it |
|---|---|
| Waiting to start | Background processing has not started; file preparation may already have occurred |
| Running | Read the reported progress; a missing total is not zero |
| Finished | Processing finished, but refused rows can still exist |
| Some did not arrive | Read the counts and reasons before deciding what to correct |
| Stopped | Some earlier batches may already have written contacts; reconcile before retrying |
Rows written can include updates to existing records. Duplicate rows ignored describes the CSV or Sheet parser's duplicates, not the number of existing contacts updated. API imports can record destination identity refusals differently.
Some source records, including CRM imports, do not report a full row total. Some refusals have no recorded cause. Keep Not reported and Reason not reported explicit rather than assuming zero or guessing why a person was refused. Values reported without a reason should not be assigned to the largest refusal group.
A separate prior campaign import shows 630 rows read, 388 written, 26 duplicate rows ignored and 216 that did not come in.
Diagnose missing rows#
Read What did not come in beside What each column became. In the campaign record, Last Contact contains call outcomes but became Email address, while Work Email was left out. Those values point to a mapping problem.
| Recorded issue | Your next check |
|---|---|
| No email, phone or LinkedIn profile | Check the field required by this destination, its mapping and the source values |
| Invalid contact value | Check whether a different column was mapped to that field; correct genuine invalid values |
| Past the limit for one import | Split the source into appropriate batches and reconcile each result |
| Do-not-contact or another campaign refusal | Read the admission reason and respect the relevant exclusion or approval |
| Reason not reported | Keep the refusal count, then ask for help if the record does not explain it |
| Unprocessed rows or a stopped job | Check what was already written and what remains unknown before another submission |
Do not erase an opt-out, bypass an approval or change a contact's identity to make a refused row pass. Buying capacity does not remove the parser's per-import row limit.
The prior campaign record shows Last Contact mapped to Email address, Work Email not brought in and do-not-contact refusals preserved.
Retry without losing the earlier result#
Import it again is a new file-selection and review task, not a rollback or automatic replay of a retained upload. Keep your original CSV, choose the corrected file, verify the mapping and check the destination again.
Read the earlier written rows and refusals first. A retry can update records that already arrived; it is not a promise that only previously refused people will change. If a response timed out or the outcome is uncertain, reconcile the original import record before submitting another one.
If the record cannot be found or read, retain the filename, intended workspace, approximate time, destination and the error. Use Get help with useful context. Share only the rows or fields needed through an approved private support route.
Keep the other routes distinct#
Your CRM, A Google Sheet and A Google Sheet, kept in sync have their own source and permission checks. A sync repeatedly reads its source; it is not the same as a one-time CSV import. Do not change a sheet's sharing or start a sync as a workaround without deciding who should have access and what recurring action you want.
The mission builder's Your list route is also separate. Saving contacts through Settings does not establish that a mission received them, that its required fields were satisfied or that the mission started. Follow Start your first mission for that workflow.
Watch the import steps#
The walkthrough follows local file selection, mapping, contact-book destination and final review. It then reads a separate prior campaign record to diagnose the outcome and mapping. Use the written steps to decide what to do with your own list and verify any action in your account.
Import a contact list and check the result
Work with your agent#
Give your agent the current guide and ask it to prepare a mapping and review checklist. The public University endpoint can retrieve and cite the instructions; it cannot read or import your private contacts.
An authorised product client may expose account reads or import tools. Have it discover its actual catalogue and permissions rather than assuming a tutorial gives access. Upload preparation writes staged data, so an import-prepare tool is not a read-only file check. External clients cannot enroll people into campaigns; finish an intended campaign enrollment through the supported in-app controls.
The task below keeps preparation, recorded evidence and proposed action separate. Its checklist records learning progress, not an import receipt.
A clear task to copy
Help me prepare a Kite contact import without uploading, staging, importing, enrolling or changing anything. Retrieve this current University guide and cite the stable section and version. Discover your actual authorised account-tool catalogue before using supported, permitted reads; confirm the intended workspace and my access. Public University retrieval cannot read private contacts. Return a proposed destination, CSV preparation checks, column-to-field mapping, fields to omit, relevant file and processing limits, campaign admission checks and the exact in-app review steps. Check the values beneath headers rather than trusting guessed mappings. Remove unnecessary private data from the source CSV before any upload; dropping a column does not remove it from the raw uploaded file. Contact-book storage is not outreach permission or an Introduction. Campaign enrollment can lead to outreach under its schedule, settings and permissions. External clients cannot enroll into campaigns, including paused campaigns; finish an intended enrollment through supported in-app controls. If an import record can be read, separate reported row totals, written rows, parser duplicates, destination refusals, unprocessed rows and recorded mapping. Written rows can update existing contacts. CRM or other sources may omit totals or progress. Keep Not reported, Reason not reported, unavailable, partial and timed-out results explicit; do not infer zero, assign unknown refusal causes or promise a retry only changes refused rows. Import it again begins a fresh file review and does not roll back earlier writes. Do not call import_prepare or another upload-preparation tool: it writes staged data. Do not upload, start an import, reveal, enrich, enroll, start or resume a campaign/mission, erase an opt-out, change identity/permissions/sharing, connect or start a sync, send a message or copy private rows into public University material. Keep credentials, private identifiers and contact files out of public citations. I will separately choose the action and destination. Return confirmed facts, remaining unknowns and the reconciliation needed before a retry.
This prepares guidance. Use the controls in your Kite workspace for account changes and starting work.
Before you move on#
You should know the intended workspace and destination, how the columns map, what the import actually recorded, and which rows or outcomes need another check. Keep any unknown result explicit before choosing a retry.
Your readiness check
0 of 6 checked
Your experience should make the next step clearer.
About this guide and its sources
Sources used to write and check this guide.
- What counts as an IntroductionChecked 2026-10-16
- Targeting, lists and exclusionsChecked 2026-10-10
- Authorised account-tool contractsChecked 2026-10-18
- Kite contact import controls and recorded outcomesChecked 2026-10-11
- Introduction counting owner decision, October 15Checked 2026-10-16