Import customer attributes from a Google Sheet

When we first released our Enrichment API and Segmentation features, we received many requests for a feature to add customer attributes via a CSV import. Using our new app for Google Sheets, you can import your customer attributes directly from a Google Sheet.

In this article, we will learn how to install the ChartMogul Google Sheets app, add your ChartMogul API keys to the app, format your data for import, and import your data.

import_googlesheet.png

Learn more about customer attributes.

Using our new Google Sheets app, you can import your customer attributes from a Google sheet. Follow these instructions to import your customer attributes.

Contents

  1. Install the Google Sheets App 
  2. Input your ChartMogul API keys  
  3. Format your data 
  4. Import data 
  5. Examples 

 

Install the Google Sheets app

Open a Google Sheet and select Add-ons from the menu. Select Get Add-ons..., and then search for ChartMogul in the Google Sheets Add-ons store.

Alternatively, go directly to the ChartMogul Google Sheets app, and click Install.

mceclip1.png

 

Input your ChartMogul API keys

In your formatted Google Sheet, select ChartMogul Google Sheets Integration > Open app > Settings and then enter your API keys.

Navigate to https://app.chartmogul.com/#admin/api. Copy and paste both your ChartMogul API Token and Secret Key into the app's input fields. Finally, click Save keys.

 

Format your data

The Google Sheets app requires your data to be in a very specific format to import customer attributes.

Here's an interactive example: 

Go to the pre-formatted Google Sheet template.

The template has four columns:

  1. Column A (Email or External ID) should include the customer's email address or external ID in ChartMogul. 
  2. Column B (Attribute) is the name of the attribute you want to create or the existing field you want to add to. There are Lead created at, Free trial started at, and Tag fields by default in all customer accounts. New attributes will be created under Custom Attributes in the customer's profile.
  3. Column C (Value) is what you would like the custom attribute to be. For example, the NPS score or the name of the Sales rep.
  4. Column D (Type) is the type of attribute you want to add. The type determines which filtering options are available. You can see a list of the different types below.

Format

All fields are required.

Column name Value
Email or External ID Your customer's email or external ID in ChartMogul.
Attribute

The name of the customer's attribute.

For example, "Marketing campaign." It can be any combination of characters.

Value

The values permitted in this column depend on the Type in each row.

If the type for this row is "String," the value can be any combination of characters, for example, "#123ABC".

If the type for this row is "Timestamp," the value can only be in the format: YYYY-MM-DD, for example, 2015-01-24.

If the type for this row is "Integer," the value can only be a number, for example, 1234, not A1 or #2.

If the type for this row is "Boolean," the value can only be "TRUE" or "FALSE" (without quotes).

Type Can be a "String" or "Tag" (all characters), an "Integer" (just numbers), a "Timestamp" or a "lead_created_at" or "free_trial_started_at" (date, e.g. 2015-01-24), or a "Boolean" ('true' or 'false').

 

 

Attribute Types

You can add seven different types of attributes with Google Sheets:

String: a sequence of letters, numbers, or symbols.

To filter:  Add filter > attribute name > is / is not / contains / does not contain / is not present

Good for: Account manager, Marketing campaign 

Integer: a whole number.

To filter: Add filter > attribute name >  equals / does not equal / is less than / is more than / is less than or equal to / is more than or equal to / is not present

Good for: NPS score, CSAT score, Number of emails opened, Number of site visits

Timestamp: a date and time.

To filter: Add filter > attribute name >  is on / is after / is before / is on or after / is on or before / is between / is not present

Good for: First visit date, Date of support ticket, Date of upgrade from free plan

Boolean: a true or false condition.

To filter: Add filter > attribute name >  is true / is false / is not present

Good for: Signed up for newsletter, Contacted support, Contacted regarding upsell

Tag: a sequence of letters, numbers, or symbols listed under the tags section of a customer profile.

To filter: Add filter > Tags > has at least one of / has none of / has all of / is not present

Good for: Top account, At risk

Tags offer a simple string that can be added through the UI as well as Google Sheets. As tags are filtered through the tags section, having a long list of tags can be less useful than creating separate custom attributes. 

lead_created_at: the date a customer became a lead.

To filter: Add filter > Lead created at > is on / is after / is before / is on or after / is on or before / is between / is not present

Customers with a lead created at date will contribute to the Leads chart.

free_trial_started_at: the date a customer became a lead.

To filter: Add filter > Free trial started at > is on / is after / is before / is on or after / is on or before / is between / is not present

Customers with a free trial started at date will contribute to the Trials chart and the Trial-to-paid conversion rate.

 

Import data

Once your data has been formatted and your API keys have been added to the app, select Enrichment in the ChartMogul Sheets menu. Click Send attributes to ChartMogul to import your attributes into ChartMogul.

The import can take some time, and please note that closing the app or the Google Sheet will cancel the import.

Once your import completes, you will be notified in the Google Sheets app.

Google's API will time out after around 1000 lines. Therefore, for larger data sets, we recommend breaking down the uploads into groups of 1000.

 

Examples 

You can add custom attribute filters to charts, cohorts, maps, and customer lists. For example, by adding an integer attribute for NPS (Net Promoter Score), you can identify all of your customers with a low score:

NPSfilter.png

You can take it even further by filtering for multiple attributes. In this example, we are looking for customers with a low NPS that have contacted support: 

npsandsupport.png

Tags are simple strings that can also be added via the ChartMogul UI. In this example, we are looking at the MRR generated by customers tagged with managed_accounts: 

enrichment3.png

 

Was this article helpful?