university
Open Kite
The library
Getting started

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.

Tutorial13 min readUpdated Oct 11, 2026
You'll leave with a clearer next step you can put into practice.

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 intentionDestinationWhat it means
Save contacts so you can review themInto your contactsRecords can be saved or updated without sending a message
Add people to a configured campaignStraight into a campaignEligible 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:

ColumnCheck before choosing the file
Name, or First Name and Last NameThe values identify the person
Work EmailThe cells contain email addresses rather than a contact status or notes
CompanyA company name belongs in the company field
Phone or LinkedIn profileInclude the contact key required by your intended channel
Your own fieldsKeep 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#

  1. Confirm the workspace name.
  2. Open Settings → Imports.
  3. Select Import people.
  4. 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.

Choose the CSV route

Bring people in shows the spreadsheet source, Choose a CSV file and the picker limits before any file is selected.

Bring people in shows the spreadsheet source, Choose a CSV file and the picker limits before any file is selected.Bring people in shows the spreadsheet source, Choose a CSV file and the picker limits before any file is selected.

Choose the CSV route

Open full-size image Open full-size image

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.

Check column values

The column mapping sends Name to Full name, Work Email to Email address, Company to Company name and Last Contact to an own field.

The column mapping sends Name to Full name, Work Email to Email address, Company to Company name and Last Contact to an own field.The column mapping sends Name to Full name, Work Email to Email address, Company to Company name and Last Contact to an own field.

Check column values

Open full-size image Open full-size image

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.

Choose where contacts go

Where to has Into your contacts selected and a separate campaign enrollment option with schedule and settings guidance.

Where to has Into your contacts selected and a separate campaign enrollment option with schedule and settings guidance.Where to has Into your contacts selected and a separate campaign enrollment option with schedule and settings guidance.

Choose where contacts go

Open full-size image Open full-size image

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.

Review before submitting

Bring them in review shows business-contacts.csv, three rows, four retained columns and one omitted column, with Back and Cancel controls.

Bring them in review shows business-contacts.csv, three rows, four retained columns and one omitted column, with Back and Cancel controls.Bring them in review shows business-contacts.csv, three rows, four retained columns and one omitted column, with Back and Cancel controls.

Review before submitting

Open full-size image Open full-size image

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.

ResultHow to use it
Waiting to startBackground processing has not started; file preparation may already have occurred
RunningRead the reported progress; a missing total is not zero
FinishedProcessing finished, but refused rows can still exist
Some did not arriveRead the counts and reasons before deciding what to correct
StoppedSome 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.

Read a recorded outcome

A separate prior campaign import shows 630 rows read, 388 written, 26 duplicate rows ignored and 216 that did not come in.

A separate prior campaign import shows 630 rows read, 388 written, 26 duplicate rows ignored and 216 that did not come in.A separate prior campaign import shows 630 rows read, 388 written, 26 duplicate rows ignored and 216 that did not come in.

Read a recorded outcome

Open full-size image Open full-size image

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 issueYour next check
No email, phone or LinkedIn profileCheck the field required by this destination, its mapping and the source values
Invalid contact valueCheck whether a different column was mapped to that field; correct genuine invalid values
Past the limit for one importSplit the source into appropriate batches and reconcile each result
Do-not-contact or another campaign refusalRead the admission reason and respect the relevant exclusion or approval
Reason not reportedKeep the refusal count, then ask for help if the record does not explain it
Unprocessed rows or a stopped jobCheck 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.

Check the recorded mapping

The prior campaign record shows Last Contact mapped to Email address, Work Email not brought in and do-not-contact refusals preserved.

The prior campaign record shows Last Contact mapped to Email address, Work Email not brought in and do-not-contact refusals preserved.The prior campaign record shows Last Contact mapped to Email address, Work Email not brought in and do-not-contact refusals preserved.

Check the recorded mapping

Open full-size image Open full-size image

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.

48 sec · Captioned, no audio

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.

Work with your agent

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

These checks stay in this browser. These are your notes; Kite’s actual account state and start checks decide readiness.
Progress stays in this browser
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
Read the agent representation