Two approaches
There are two ways to do this, and which one fits depends on how complex the source sheet’s layout is.
- Option A: create a new sheet and move the data in — create the sheet from the app and paste the existing data across. The column layout is guaranteed correct, so this is the harder one to get wrong. Formulas, formatting, and filters from the old sheet do not come with it
- Option B: convert the existing sheet — add Contacts and Companies sheets to the spreadsheet they already use and match the columns yourself. Choose this when other tabs or settings in that file need to stay. You are responsible for getting the names and order exactly right
When in doubt, choose Option A. Only consider Option B when the existing sheet has real work built into it — complex formulas, conditional formatting, and so on.
Before you start (required either way)
- Make a copy of the original sheet (File → Make a copy). If the sheet belongs to someone else, it matters that the copy lands in the owner’s own Drive, made by them — not by you
- Review the source sheet’s columns and work out which PixWork column each maps to
- Check date formats. Convert anything ambiguous like
7/8/2026to a year-first format - Check whether phone numbers have lost a leading zero. If they have, confirm the correct value against the original card or list
- Check for duplicate rows
Starting work without a copy is the most common failure at this step. Confirm the copy exists with your own eyes before touching anything.
Option A — new sheet, move the data
- In the app, go to Settings → team sync and create a new spreadsheet. Both sheets and their headers are set up automatically
- Copy the source data into the matching columns. Where the order differs, move them one column at a time, checking the destination as you go
- Put one of the six values from the schema page (
Uncontacted, etc.) in the Status column. Leaving it blank is fine too - For Created Date, use the source data’s creation date if it has one; otherwise leave it blank
- Run a sync from the app and confirm no error appears
- Check by eye that a few records came through into the app correctly
Option B — convert the existing sheet
- Add sheets (tabs) named
ContactsandCompaniesto the existing spreadsheet. The tab names must match exactly - Put the 20 Contacts headers from the schema page in row 1. The order is free, but the spelling must match exactly
- Put the 14 Companies headers in row 1 in the exact order from the schema page. Here the order must match too
- Move the data from the original tab into the Contacts sheet
- In the app, go to Settings → team sync and select this spreadsheet through the Google picker
- Run a sync and confirm no error appears
Selecting the sheet in the app is what triggers layout validation. An empty header row gets set up automatically, but a header row that is already filled in and doesn’t match is not overwritten — you get an error instead, and you fix the header by hand.
Letting AI draft the conversion
When the source sheet has many columns, or working out the mapping is taking a while, Prompt 1 on the "AI prompts" page produces a conversion plan.
But do not take the AI’s output on trust. Check the column names against the schema page’s table, and confirm the AI has not filled in any data by guessing.
Verifying after migration
- A sync runs from the app with no error
- The migrated data appears in the app’s contact list
- Editing one record in the app and syncing pushes the change to the sheet
- Changing a Status in the sheet and syncing pulls the change into the app
- If the team shares the sheet, other members can select the same sheet
Common problems
- Sync throws an error — the most common cause is the Companies column order. Check it against the schema table character by character. Column F in particular is
Conversation Starters, notDeep Insights - No Companies sheet was created — it is required even if you only use contacts. Without it, sync stops
- Older data doesn’t sync — only contacts updated within the last 90 days are synced. To bring older records into the app, edit them in the sheet and they become eligible
- The same person appears twice — when Email is empty, identity falls back to name + company name. Inconsistent company-name spellings get treated as different people, so normalize them before migrating
- A leading zero disappeared from a phone number — this happens when a paste is interpreted as a number. Set the destination cells to plain text format before pasting