Using Google Spreadsheets as a Database


Also something I just learned was that you can in fact delete entries before they actually load. My previous attempt to clear it actually did work, but is already back at 1,200 lines from just the past 5 days, and that is with a decent sized blacklist of output.


Corrected the formatting of the original post.



Limitations removed for request per day.


Overall this is not a good idea, not just for that reason.


Its perfect for clans, and analytics.


Not really. It’s good for analytics possibly, but there isn’t really a good substitute for an actual Database.


Yes it is for cross game data like saving points because it’s not like you are trying to run several game servers and constantly update. ROBLOX doesn’t support saving across games, so what else would you do.


Run a proper database like is expected? It’s not good practice to rely on spreadsheets and a macro hack for storing data.


It’s great for an admin system. I can easily store bans / logs in the google spreadsheet across any of my games.


You do not understand - Spreadsheets ARE NOT DATABASES
Using them as such for anything except the most basic logging is just asking for trouble.
The real solution is to create your own database.

Azure, AWS, Google Cloud Platform, or any other PaaS / SaaS platform can host them.


I’ll just take a moment to interject. It would be naive to say that Google sheets are not databases when in-fact they are an abstraction of one. The sheets API most certainly queries some kind of database to retrieve or alter the requested information.

Furthermore the API has changed since I originally wrote this, almost 3 years ago, and offers much better ways to manipulate data efficiently.

A group I work with actively uses this to store information about their members and we are yet to run into any problems with this.

However, this is not to say you wouldn’t be better using a system designed for this, but if you want a quick and easy solution for a small-scale project then is not that bad.


I agree - for small projects, i.e. basic stats logging (player counts and whatnot) it’s fairly ideal.

On the other hand, when I see large war clans relying on this system (Sleet Clan, for example) it’s getting to the sort of ‘Trello’ level of database. It’s just a practice I’d rather support regarding people using proper databases when they’re creating (what should be) fairly robust and advanced systems like warclan auto promotion rather than small scale projects.


An admin system isn’t that large scale of a ‘project’, it simply stores the names of players and their current moderation status.

Since seperate universes do not support cross datastores, the only way to sync ban / moderation data between games universally is with a 3rd party service. Google sheets would handle such data just fine.


I just use datastores. This method seems to work fine too but I just prefer to have it in a datastore. Also don’t save stats on a Trello board… some people do it but it lags bad and seems not too reliable.


I personally wouldn’t use spreadsheets for scalability and security reasons.

It would be good practice to start familiarizing yourself with servers & data management for future projects.


Thanks for taking the time to create the tutorial. This is great, it ‘humanizes’ your data really easily. The ease of backups is great too. Moving further, you could setup a whole analytics hub with all of your games data setup on different sheets. This may be a nice alternative vs the analytics provided by Roblox right now if a person does not have GA setup yet.


Innovation Inc and Innovation Security use a modified version of this so we can edit records in Google Spreadsheets. As you said, there is a availability concern, but it only needs somewhere between 50 and 500 requests a day for Innovation Inc and maybe 200 to 1000 for Innovation Security.


How would I be able to use this as like a leaderboard. So basically if I have a button in game, the spreadsheets automatically updates to the amount of times you’ve pressed the button, in total.


As mentioned before on this thread, Google sheets has a relatively low limit of requests to their API. Using sheets for real-time data sync sounds like a bad idea. Custom web severs are pretty much the only reliable way to go at the moment.


You would never be able to do this with using Google sheets its just not scalable but data stores / ordered data stores are.