Logo

Google Sheets

Sync your localization data with the cloud

Overview

Evo Localization allows you to fetch localization data directly from a published Google Sheet. This is useful for collaborating with translators or team members who don't have access to Unity.

Google Sheets integration is currently in beta. Future updates may introduce workflow changes.


Setup Guide

1. Prepare Google Sheet

Create a new Google Sheet

Set the first row as headers: Key, followed by your language names (e.g., Key, English, French, Japanese)

Click File -> Share -> Publish to web

Ensure the link setting is public so the CSV can be downloaded by the system

Example Spreadsheet:

KeyEnglishGermanJapanese...
menu_playPlaySpielenプレイ...
menu_settingsSettingsEinstellungen設定...

2. Configure Unity

Open Localization Settings

Enable Google Sheets Integration

Paste your Spreadsheet ID (the long string of characters in the URL) docs.google.com/spreadsheets/d/[SPREADSHEET_ID]/

Set the Sheet GID for each Table in the Table list

  • The GID is found in the browser URL when you switch tabs in the sheet (e.g., gid=0 or gid=123456) docs.google.com/spreadsheets/d/[SPREADSHEET_ID]/edit/?[gid=0]

3. Fetch Data

You can fetch data manually or automatically.

  • Auto-Fetch On Start: Fetches new data every time the game launches.
  • Auto Update: Periodically checks for updates at runtime based on an interval.

To fetch manually via code:

LocalizationManager.GoogleSheets.FetchData();

Caching

To prevent excessive network requests, the system caches data. You can control the Cache Duration in the Localization Settings. If a request is made within the duration window, the cached data is returned immediately.

To clear the cache manually:

LocalizationManager.GoogleSheets.ClearCache();

Unless Auto Update is enabled,the cache will only be requested once (unless called externally). Cache Duration basically tells the system "use this cache even if requested within X duration".


Limitations

This is a basic integration. It has no encryption and requires a public readable link, so it may not be suitable for projects containing sensitive information.

While this is not an issue for most projects (as localization tables usually do not contain sensitive data and the link is not exposed directly in the build), be aware that there is currently no encryption implemented.

Based on user feedback, I'll work on improving on this feature, so you can link a Google account with a key.


On this page