This Unity plugin makes it incredibly easy to set up and retrieve data from Google Sheets in just a few minutes. Using a Google Service Account, you can securely work with private sheets, so your data stays protected while remaining fully accessible in your project. After a quick configuration, you can access your data directly as strongly-typed C# variables — without manually parsing JSON or creating data classes yourself.
The entire workflow is designed to be simple, intuitive, and beginner-friendly. Even with tens of thousands of variables, the plugin can quickly retrieve and load your data in just a few seconds, making it suitable for both small projects and large-scale applications. If you know how to access an array or a variable in C#, you already know how to use this plugin.
🔹 How It Works
No boilerplate code.
No complex setup.
No manual parsing.
🔹 Secure Private Sheets
This plugin uses a Google Service Account, allowing you to store your data in private Google Sheets. Unlike many similar plugins that require public sheets, your data remains secure and accessible only through your Unity project.
🔹 Example Usage
Accessing data is as easy as referencing a variable:
Debug.Log("Milk price in third cheap shop: " + GameData.cheapShops[2].milk);
Debug.Log("Egg price in first expensive shop: " + GameData.expensiveShops[0].egg);
🔹General access pattern:
<SheetName>[rowIndex].<columnName>
Row index starts from 0, just like standard C# arrays.
🔹 Working with Arrays
You can assign values directly:
bool butter = GameData.supermarkets[100].butter;
int[] juices = GameData.expensiveShops[5].juices;
To safely modify data locally without affecting the original array:
int[] juicesCopied = GameData.expensiveShops[5].juices.ToArray();
You can also access single array elements instantly:
int singleJuice = GameData.expensiveShops[5].juices[0];
🔹 Looping Through Data
Using a standard for loop:
for (int i = 0; i < GameData.expensiveShops.Length; i++)
Debug.Log(GameData.expensiveShops[i].bread);
Or a clean foreach loop:
foreach (ExpensiveShopsObj shop in GameData.expensiveShops)
Debug.Log(shop.bread);
🔹 Performance & Scalability
Even with tens of thousands of variables, this plugin retrieves and loads data in just a few seconds.
It works reliably for both small prototypes and large-scale projects.
🔹 Supported Variable Types
🔹 Why Use This Plugin?
✔ Extremely easy to use
✔ Clean and readable C# API
✔ No JSON parsing required
✔ Perfect for designers and programmers working together
✔ Beginner-friendly, but production-ready
✔ Ideal for game balance, configuration data, and live iteration
✔ Supports private Google Sheets via Google Service Account — no need to make your sheets public
⭐ Support & Reviews
If this plugin saves you time or simplifies your workflow,
please consider leaving a review on the Asset Store — it helps other developers find this tool and supports future updates.