Import Activities via Google Sheets

Import Activities via Google Sheets

Success at Copper avatar
Written by Success at Copper
Updated over a week ago

While the Copper import feature does not allow you to import Activities, we have built a tool that will allow you to do this via Google Sheets.

*Please note, this is not a supported feature, this is a tool we have built to assist with Activity Import. Our Support team will not be able to troubleshoot any errors*

*Additionally, this tool does not allow a revert of imported Activities, so any import cannot be deleted unless you do so through our API*

Instructions on how to import activities

Please Note: When importing data into Google Sheets, we recommend importing in batches of 20k rows or less. If you import more than 20k rows at once you may receive and error and the import will fail.

Part 1: Import all four types of data

If you are using a unique identifier that is not a default field in Copper then:

Set up custom fields for all “Companies”, “People”, “Opportunities” and “Leads” data. For example you can create a custom field called “External ID” for your original data identifier.


Part 2: Make a copy of our spreadsheet

  1. It will ask you to make a copy. Please click to make a copy.

  1. If you do not have our Google Sheets Add-on, download it here.


Part 3: On your copy of the spreadsheet

  1. Type in your registered Copper email address and copy/paste in your API Token from Copper ⇨ Settings ⇨ API Keys ⇨ Generate API Token ⇨ Copy/paste it here

  1. In the menu, go to Add-ons -> Copper CRM for Google Sheets -> Import data

  1. In “Choose what you want to import” put the Parent Type you need. First we import Companies, so select Companies. In “Choose a filter,” we need all company records. So we select “All Companies.”, and hit “Import data”.


4. Wait for it to load


5. You should see a new sheet named as this at the bottom


6. Rename this sheet to “companies”


7. Repeat step 2 to step 6 for the other 5 resource types “opportunities”, “people”, “leads”, “tasks” and “projects”.

Note: they have to be renamed to “opportunities”, “people”, “leads”, “tasks” and “projects”. For opportunities, you may need to extract all opportunities from every pipeline, then combine them into one sheet.

The sheets tabs should look like this:


(If you are not using one of the tabs, just create an empty tab with that name. The tab still has to be there!)

8. Then we need to modify each of the data sheets:

A. If you have an external ID (for example, if you are migrating from SalesForce), drag or create your “External ID” column to the first column of this sheet:


B. If you do not have an external ID, you could use Copper ID. Duplicate the Copper ID column by inserting 1 column left to Copper ID column, then copy everything to the newly created column:


9. Repeat step 8 for all other data sheets.

Part 4: Fill in activity data into Sheet 1

  1. There are 6 columns you can input activity data.


The first 4 columns are required. Activity will be skipped when empty cells were found.


Then 2 optional columns. If empty, “User Name” will be the user associated with an API token, “Activity Date” will be the import date (M/D/YYYY or MM/DD/YYYY format).


The last 2 columns are status indicator. You don’t have to input anything here. “*Progress*” can be “Done”, “Skipped” or “Not found” (when parent entity is not found on the data sheet). When one activity is successfully imported, “*Activity ID*” will be the newly created ID of that entry for your reference.

  1. For “Parent ID” column, this is where you put your “external ID” of the parent that activity should be logged on. It matches the “External ID” column of the corresponding data sheet.

  1. “Parent Type” column has to be one of the 6 data types: “company”, “opportunity”, “person”, “lead”, “task” or “project”. Data validation on this column can also help you get the right input.

  1. For “Activity Type” column, you can put all to be “Note”, or you can use the Activity Type helper from “Copper” menu => Get activity types. It will generate a new sheet with all the activity types available, just paste the name of that type into the column.

  1. “Details” column is where you put the content of activities in. Could be simply paste from your source data.

  2. “User Name” column is similar to “Activity Type”, you can use the User Name helper from “Copper” menu => Get users list. Just paste the user name into the column so it’ll be who logged that activity.

  1. “Activity Date” can be copied from your source data or entered manually. Use MM/DD/YY or M/D/YYYY format only. Otherwise, the dates will not render correctly. Any time values should match the time zone of the person who generated the API key.

  2. After all columns are filled in, now we can start the importing process by hitting Copper menu => Import activities

  1. It might ask you for authorization. Click “Continue”

  1. Click Allow

  1. You will see a notification saying “Running Script”


You can also check the “*Progress*” column for the running status.

  1. You are done!

If you get some errors while running the script, you can REFRESH the page, modify the row that is causing the error. Then remove all the rows above it that has a “Done” in the “*Progress*” column preventing duplicate activities. Just remember to right click on the rows => Delete cells => Shift up. You can also add more info to those “Skipped” ones. Then run the script, Copper menu => Import activities, again.

If you have any questions, please contact our support team through the in-app chat.

Did this answer your question?