# Syncing String Table Collections
For each String Table Collection you want to connect to a Google Sheet, you need to add a Google Sheet extension to the String Table Collection’s **Extensions list**. To do this, click the **Add(+)** button in the **Extensions** field. It is possible to add multiple extensions to a String Table Collection (for example, you might want to have a different sheet for each locale, and therefore a Google Sheet Extension for each sheet).
To sync a String Table to a Google Sheet, you need to connect it to a Sheets Service Provider asset. See [Sheets Service Provider](Google-Sheets-Sheets-Service-Provider.md) for information on creating and configuring one.

| **Property** | **Description** |
|--------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **Sheets Service Provider** | Assign the [Sheets Service Provider](Google-Sheets-Sheets-Service-Provider.md) Asset you want to use. |
| **Create New Spreadsheet** | Select this button to create a new spreadsheet for String Table data. Use this if a Google Sheet for this String Table does not already exist. |
| **Spreadsheet Id** | Enter the Spreadsheet ID from your Google Spreadsheet. In the Spreadsheet’s Google URL, this is in the middle of the URL:
https://docs.google.com/spreadsheets/d/**spreadsheetId**/edit#gid=sheetId |
| **Sheet Id** | Enter the Sheet ID from your Google Spreadsheet. In the Sheet’s Google URL, this at the end of the URL:
https://docs.google.com/spreadsheets/d/spreadsheetId/edit#gid=**sheetId** |
| **Add Sheet** | Create a new sheet based on the properties defined in the associated Sheets Service Provider’s New Sheet Properties. |
| **Select Sheet** | Select a sheet from the Google Spreadsheet. |
| **Mapped Columns** | Assign specific types of data to specific columns. See **Mapped Columns**, below, for details. |
| **Remove Missing Pulled Keys** | Remove any keys that are not present in a sheet after a pull. |
| **Push Selected** | Push selected mapped columns to the Google sheet. |
| **Pull Selected** | Pull selected mapped columns from the Google sheet. |
| **Push** | Push all mapped columns to the Google sheet. |
| **Pull** | Pull all mapped columns from the Google sheet. |
## Mapped Columns
Use the **Mapped Columns** field to configure how your project pushes and pulls data from the spreadsheet. A mapped column can read and write to a single column's value and note property.
To add a new column mapping, select the **Add(+)** button.

| **Option** | **Description** |
| ----------------------------------| --------------- |
| **Key Column** | A **Key Column** includes the Key name in the value field and the Key Id in the note field. This means that it is possible to rename a key and even assign a custom Id value.

| **Locale Column** | The **Locale Column** includes the values from a single String Table for the selected Locale. If **Include Comments** is enabled, any comment metadata is included in the Sheet as notes.

| **Locale Comment Column** | The **Locale Comment Column** includes comment metadata as values.

| **Add Default Columns** | This adds a **Key Column** and a **Locale Column** for each Locale in the project.
| **Extract Columns From Sheet** | If the Spreadsheet already contains locale data, this option reads the column titles and creates column mappings. This option requires [OAuth authorization](Google-Sheets-Sheets-Service-Provider.md#oauth-authentication).
It recognizes the following names: