The Upload Families tool lets you import many families at once from a CSV file instead of adding them one at a time. Each row in your file becomes a lead (parent/guardian), optionally with a child attached, at the center and status you specify.
Who can use this: Anyone with the Upload Families Importer permission. If you don't see the Upload (folder-upload) icon on the Families page (in the top right, next to Group Action), ask an administrator at your organization to grant you the Upload Families Importer permission.
Before You Start
File format: CSV only. Excel files (.xlsx) are not supported — save or export your spreadsheet as .csv first.
First row = headers. The top row of your file must contain the column names exactly as listed below.
Processing runs in the background. When you upload, the file is queued and processed behind the scenes. You'll see: "Your file is being processed. When finished, the results will be emailed to you." The results email comes from noreply@lineleader.com with the subject "Import Results."
How to Upload
If you have the Upload Families Importer permission
Go to Enroll → Families.
Click the Upload (folder-upload) icon in the top right, next to Group Action.
In the Upload Families dialog, click to choose your .csv file.
Click Upload. You'll see an on-screen confirmation that the file is processing.
Watch your inbox for the Import Results email.
Required Columns
Every row must include these:
Column Header | Data Needed |
STATUS | The family's status (must match a status name in your system, e.g. Waitlist, Enrolled). |
LOCATION NAME | The center name — must match an existing center exactly. |
LEAD FIRST NAME | Parent/guardian first name. |
LEAD LAST NAME | Parent/guardian last name. |
LEAD INQUIRY TYPE | Must match a valid Inquiry Type in your settings. |
LEAD SOURCE | Must match a valid Lead Source in your settings. |
If you include any child information, these child columns also become required for that row:
Column Header | Data Needed |
CHILD FIRST NAME | Child's first name. |
CHILD LAST NAME | Child's last name. |
CHILD BIRTH DATE | Must be formatted YYYY-MM-DD (e.g. 2021-03-14). |
A row without any child columns filled in will import just the parent/lead. As soon as you fill in any child field, the three child fields above are required for that row.
Optional Columns You Can Include
Lead / parent details: LEAD ADDED DATE, LEAD PRIMARY PHONE, LEAD PRIMARY PHONE TYPE, LEAD EMAIL ADDRESS, LEAD ADDRESS, LEAD CITY, LEAD STATE/PROVINCE, LEAD ZIP/POST CODE, LEAD DO NOT CALL, LEAD DO NOT EMAIL, LEAD DO NOT TEXT, LEAD MARKETING CAMPAIGN, LEAD COMMENTS, LEAD RELATION TO CHILD
Child details: CHILD GENDER, CHILD ESTIMATED DOB, CHILD PREFERRED NAME, CHILD COMMENTS, CHILD CLASSROOM, CHILD MONDAY-AM through CHILD FRIDAY-PM (each weekday AM/PM slot), SIBLING IN CARE, CHILD OF STAFF, IS FEE PAID, DATE FEE PAID, FEE AMOUNT, CHILD FULL DAYS, CHILD HALF DAYS, CHILD ADDED DATE, CHILD START DATE
Status details: STATUS REASON, STATUS DATE
Custom fields: Add a column named CUSTOM LEAD: <your field name> or CUSTOM CHILD: <your field name> to populate a custom field, where <your field name> matches the custom field's name in your system.
Formatting Rules (Avoid Common Errors)
Dates
CHILD BIRTH DATE must be YYYY-MM-DD.
Other date fields (added date, start date, status date, etc.) accept standard date/time formats.
Email Must be a valid email address, or the row will error.
Phone Must be a valid phone number for your account's country.
Yes/No (boolean) fields Accepted values are yes / y / true / t / 1 for yes and no / n / false / f / 0 for no.
Dropdown-type fields (status, source, inquiry type, gender, phone type, relationship, status reason) — the value must exactly match an option already configured in your system.
Center, Classroom, Campaign, and Status names Must match existing records by name. (Classrooms are matched within the center named in that row.)
STATUS REASON The valid reasons depend on the STATUS in the same row (e.g. a Waitlist reason for a Waitlist status, a Withdrawn reason for a Withdrawn status). Some statuses require a reason.
Duplicates and Error Handling
The import checks for existing families within the same center:
Parent match is based on matching phone, email, or first + last name.
Child match (when child data is present) is based on first + last name plus a birth date within about ±2 days.
What happens when a match is found:
Situation | Result |
Parent already exists, no child in the row | Row is treated as a duplicate, skipped, and listed in a duplicates report. |
Parent already exists and the row has a new child | The child is added to the existing family rather than creating a duplicate family. |
Errors don't stop the whole import. Any row that fails validation is skipped and logged, and the rest of the file continues processing. Your Import Results email includes:
A summary (Total Imported and Total Rows)
An errors CSV (each failed row with an added Error Message column explaining why)
A duplicates CSV (rows skipped as duplicates)
To fix problems, open the errors file, correct the rows using the message in the Error Message column, and re-upload just those corrected rows.
What Gets Created
A lead (family) record at the specified center and status. If no added date is provided, it defaults to the time of import.
A child record linked to that lead, when child columns are provided.
Any custom field values, marketing/campaign associations, and status-specific details (e.g. waitlist date, enrolled reason, withdrawn date) based on the columns you included.
Note: Imported families are brought in as bulk/historical records and do not trigger the automated workflows or business rules that fire when you add a family manually.
Tips for a Smooth Import
Start with a small test file (a few rows) to confirm your column headers and dropdown values match your system before importing thousands of rows.
Keep your headers spelled exactly as shown above — an unrecognized column will cause the import to reject the file.
Match dropdown values (status, source, inquiry type, etc.) to what's already configured in your account.