All Integrations

Google Sheets Import and Export

Export any Standard Time® view to a live Google Sheet in one click, and import project data, time entries, or inventory from any spreadsheet — no file downloads, no email attachments.


What You Can Do

Standard Time® has a direct Google Sheets integration that pushes any data set to Google Drive as a live spreadsheet and pulls data back in for imports — no intermediate file required. The integration supports two authentication methods (Service Account and OAuth2) and handles both one-off exports and automated recurring delivery.

Export any view
Go to File → Export → Google Sheets from any grid, timesheet, or report. Choose a sheet name, Drive folder, and whether to overwrite an existing sheet. The new sheet opens in a browser tab immediately after export.
Import from any sheet
Go to File → Import → Google Sheets, paste the sheet URL, click Load to see the tabs, pick the tab and record type, and import. Bring in projects, time entries, employees, work orders, inventory, and BOM records.
Standard Time project task data exported to a Google Sheet with dates, duration, and actual work columns
A Standard Time® project task list exported to Google Sheets. Visible columns, applied filters, and current sort order are all preserved in the output spreadsheet.

Export to Google Sheets

Exporting is a one-click operation from any view. Open any grid or report — Time Logs, Projects, Project Tasks, Resource Allocation, Timesheets — apply your filters and column layout, then go to File → Export → Google Sheets.

Four-step export flow: open any view, File to Export, Google Sheets dialog, sheet opens in browser

Export Dialog Options

Standard Time Google Sheets export dialog showing sheet name, date suffix, Drive folder, override, and remember settings options
The Export to Google Sheets dialog. Fill in the sheet name and Drive folder, then click Export.
OptionWhat it does
Sheet NameName for the new spreadsheet. Defaults to the title of the current view.
Append dateAdds today's date to the sheet name — useful for keeping dated snapshots without overwriting earlier exports.
Drive FolderFolder in your Google Drive where the sheet is created. Defaults to "Standard Time Exports". Leave blank to save to your Drive root.
Replace if existsUpdates the existing sheet in-place rather than creating a new one when a sheet with the same name is already in the chosen folder.
Remember settingsSaves these preferences and skips the dialog on future exports. Hold Alt while clicking Google Sheets in the menu to force the dialog open again.
Tip: Check Remember these settings after you have set your preferred sheet name and folder. Future exports to Google Sheets will use those settings immediately, without opening the dialog. Hold Alt while selecting File → Export → Google Sheets to force the dialog open any time you need to change the options.

After the export completes, Standard Time® opens the new Google Sheet in a new browser tab automatically and shows a toast notification confirming whether a sheet was created or an existing one was updated.


Import from Google Sheets

To import data from a Google Sheet, go to File → Import → Google Sheets. The dialog remembers the last URL you used, so repeat imports from the same spreadsheet are fast — just confirm the tab and click Import.

Four-step import flow: paste sheet URL, click Load, select tab and record type, click Import
  1. Open the Import dialog.
    Click File → Import → Google Sheets. The dialog opens with the URL field pre-filled if you have imported from the same sheet before.
  2. Paste the spreadsheet URL or ID.
    Copy the URL from your browser's address bar when the sheet is open — for example, https://docs.google.com/spreadsheets/d/1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgVE2upms/edit. You can also paste just the spreadsheet ID (the long alphanumeric string between /d/ and /edit).
  3. Click Load to fetch the tab list.
    Standard Time® reads the spreadsheet's sheet tabs and populates the dropdown. If you are using a Service Account and the sheet is not already shared with the service account email, a blue note appears at the bottom of the dialog — share the sheet with that email address and click Load again.
  4. Select the tab and record type.
    Choose the sheet tab that contains your data. Then choose the record type: Projects, Project Tasks, Time Entries, Employees, Work Orders, Inventory, or BOM.
  5. Click Import.
    Standard Time® reads the spreadsheet rows and creates or updates records. When complete, the current view refreshes and a toast confirms the result.
Column headers must match Standard Time® field names. Open View → Properties, click any existing row of the record type you are importing, and check the field labels in the Properties panel on the right. Those are the exact column header names your import spreadsheet must use.
Exported sheets are not import-ready. A sheet you exported from Standard Time® may be missing columns that an import requires. For example, to import project tasks, the spreadsheet must include a Project column on every row so Standard Time® knows which project each task belongs to — but that column may not appear in a task export at all, or may be named differently than the import expects. Build import files from scratch using the Properties panel field names rather than re-using an exported sheet as a template.
Service Account sharing note: When using a Service Account, that account must be given access to any sheet you want to import from. Open the sheet in Google Drive, click Share, and add the service account email address (shown in the import dialog) as a viewer or editor before clicking Load.

Setting Up Google Integration

Before you can export or import, an administrator must configure Google credentials. Go to Tools → Google Integration to open the setup dialog. The Auth Type dropdown determines how Standard Time® authenticates with Google APIs.

Standard Time Google Integration configuration dialog with Auth Type selector, Service Account fields for client email and private key, and OAuth2 fields for client ID and redirect URI
The Tools → Google Integration dialog. Set the Auth Type and fill in the corresponding credential fields. The Private Key and Client Secret are write-only — once saved, the dialog shows a placeholder so you know a value is stored without revealing the secret.

Auth Types

There are four Auth Type settings. The two you will use are Service Account and OAuth2. Choose Both if you want OAuth2 for users who sign in and Service Account as a fallback for those who do not.

Comparison table of Service Account, OAuth2, and Both auth types showing best use case, sign-in requirement, and Drive location
  • None — Google Sheets export and import are disabled. Choose this if credentials are not yet configured.
  • Service Account — Standard Time® uses a shared Google service account identity to create sheets and automatically shares each sheet with the requesting user's email. No per-user sign-in required.
  • OAuth2 — Each user connects their own Google account once via a consent popup. Exports go directly into that user's Google Drive under their own identity.
  • Both — Uses the connected user's OAuth2 tokens when available; falls back to the service account for users who have not signed in.

Service Account Setup

A service account is a special Google identity that Standard Time® uses to access Google APIs without requiring individual users to sign in. You download a JSON key file from Google Cloud Console and enter three values from it — Client Email, Private Key, and Project ID — into the Google Integration dialog.

Seven-step service account setup in Google Cloud Console: sign in, create project, enable APIs, create service account, create JSON key, copy credentials, enter in Standard Time
  1. Go to console.cloud.google.com and sign in with your Google account.
  2. Create a project (or select an existing one). Google may require a billing account on file even for free-tier API usage — the Sheets and Drive APIs have no per-use charge for normal volumes, but a credit card on file may be required before Google allows API enablement.
  3. Enable the Google Sheets API and Google Drive API.
    Go to APIs & Services → Library, search for each API, and click Enable.
  4. Create a service account.
    Go to IAM & Admin → Service Accounts and click Create Service Account. Give it a name and click Done.
  5. Create a JSON key.
    Click the service account you just created, go to the Keys tab, and click Add Key → Create New Key. Choose JSON and click Create. The key file downloads automatically.
  6. Copy the three values from the JSON file.
    Open the downloaded file in a text editor. Copy the values for client_email, private_key (the full -----BEGIN RSA PRIVATE KEY----- block), and project_id.
  7. Enter the values in Standard Time®.
    Go to Tools → Google Integration, set Auth Type to Service Account (or Both), paste the three values into Client Email, Private Key, and Project ID, and click Save.
What happens after saving? Standard Time® uses the service account email to create Google Sheets on its Google identity, then automatically shares each new sheet with the user's email address — so users find their exports in the Shared with me section of Google Drive.

OAuth2 Setup

OAuth2 lets each user connect their own Google account so exports go directly into their personal Google Drive. You set up an OAuth2 app in Google Cloud Console, then each user completes a one-time sign-in flow in Standard Time® by clicking Connect Google Account in the Google Integration dialog.

  1. Enable the Google Sheets API and Google Drive API — same as steps 1–3 of the Service Account setup above.
  2. Configure the OAuth consent screen.
    Go to APIs & Services → OAuth consent screen. Choose External (or Internal if your organization uses Google Workspace). Fill in the app name and support email, then click Save and Continue. On the Scopes step, add auth/spreadsheets and auth/drive.file, then finish the wizard.
  3. Create an OAuth client ID.
    Go to APIs & Services → Credentials and click Create Credentials → OAuth client ID. Choose Web application as the application type — not Desktop or Android.
  4. Add the Redirect URI.
    Open Tools → Google Integration in Standard Time® and copy the Redirect URI shown in the dialog (click the copy icon). Paste it into Authorized redirect URIs in Google Cloud Console and click Save. The URI must match exactly.
  5. Copy the Client ID and Client Secret.
    After saving, Google displays your Client ID and Client Secret. Copy both values.
  6. Enter them in Standard Time®.
    In Tools → Google Integration, set Auth Type to OAuth2 (or Both), paste the Client ID and Client Secret into the corresponding fields, and click Save.
  7. Each user connects their Google account.
    After credentials are saved, each user clicks Connect Google Account in the dialog. A browser popup opens Google's consent screen — the user clicks Allow. Standard Time® stores the tokens and future exports go directly to that user's Drive.
Standard Time Google Account connection dialog showing connection status and Connect Google Account button
The per-user Google Account dialog shows whether the current user's Google account is connected. Click Connect Google Account to start the one-time OAuth2 consent flow.
Testing mode note: If your OAuth consent screen is set to Testing, only users explicitly listed as Test users in Google Cloud Console can complete the sign-in flow. Publish the app in the OAuth consent screen settings when you are ready for all employees to connect.

Troubleshooting

Error or symptomCauseFix
"Service account credentials are not configured" Auth Type is Service Account (or Both) but credentials have not been saved Enter Client Email, Private Key, and Project ID in Tools → Google Integration and click Save
"Your Google account is not connected" Auth Type is OAuth2 and the current user has not completed the sign-in flow Click Connect Google Account in the Google Integration dialog and allow access in the popup
"OAuth2 app credentials are not configured" Auth Type is OAuth2 but Client ID and Secret have not been saved Complete the OAuth2 app setup in Google Cloud Console and enter the credentials in Standard Time®
Import shows "share this sheet with [email]" note The service account cannot read the sheet because it was not shared with the SA email Open the sheet in Google Drive → Share → add the service account email as a viewer or editor, then click Load again
OAuth sign-in popup closes without connecting Redirect URI mismatch, test user not listed, or consent screen not published Verify the Redirect URI in Google Cloud Console matches exactly; confirm the signing user is listed as a test user if the app is in Testing mode; check the consent screen is saved with app name and support email
"Wrong OAuth client type" The OAuth client in Google Cloud Console was created as Desktop or Android instead of Web application Delete the old OAuth client and create a new one — choose Web application as the application type
Export succeeds but sheet is not visible in Drive Service Account auth: the sheet was created in the SA's Drive and sharing failed, or the user is looking in the wrong Drive Check Shared with me in Google Drive. Verify the user's email in Standard Time® is correct. Re-export to trigger a fresh share.

Related guides and FAQs:
Back to Learning Center

Ready to Export Your Data to Google Sheets?

Start a free 30-day trial and push timesheets, projects, and reports to Google Drive in seconds.

View Pricing Contact Us