Two solutions that do not include a payment subscription: 1) write a script or short application ( choose your language ) that exports the Google Sheet using the Google Drive API as a CSV. Why Drive API? The Sheets API is designed for spreadsheet- oriented functionality, that is, formatting data, resizing columns, creating charts, checking cells, etc., while the Drive API for file- oriented functionality, that is, import / export.
If you are using Python, here is a complete example that you can run as a cron job on your server or if the application is hosting on Google App Engine . If you do not, you can use it as a pseudo-code and choose any language supported by the Google API client libraries . Here is the main code snippet from this example (suppose the very last sheet is called "inventory"):
FILENAME = 'inventory' SRC_MIMETYPE = 'application/vnd.google-apps.spreadsheet' DST_MIMETYPE = 'text/csv' files = DRIVE.files().list( q='name="%s" and mimeType="%s"' % (FILENAME, SRC_MIMETYPE), orderBy='modifiedTime desc,name').execute().get('files', []) if files: fn = '%s.csv' % os.path.splitext(files[0]['name'].replace(' ', '_'))[0] print('Exporting "%s" as "%s"... ' % (files[0]['name'], fn), end='') data = DRIVE.files().export(fileId=files[0]['id'], mimeType=DST_MIMETYPE).execute() if data: with open(fn, 'wb') as f: f.write(data) print('DONE')
If your sheet is large, you may need to export it to pieces - see this page on how to do this. You can also send the contents of the file to yourself using the Gmail API . If you're new to the Google APIs at all, I have a (somewhat outdated, but) convenient intro video for you. (After that, there are 2 videos that may be useful.)
2) Another solution for those who are "allergic" to using the API, and that the alternative to Google Apps Script , Javascript is outside the browser. Like Node, it works on the server side, but on Google servers. Using Script applications, you can use DriveApp or advanced Drive services to access your sheet, then use MailApp or GmailApp to send it by email or use UrlFetch to send it to the server of your choice. To run it at a normal interval, you need to create a script as a time-driven installation trigger . In any case, you do not need to post + your application yourself.
ps. the latest version of the API for drives is v3 , but if you connect to Drive from Script applications, it uses v2 (not yet deprecated).