Before you start
A workflow defines which Google Sheets to read, which columns and rows to include, where the results should go, and when to run. For example, you can combine two regional sales spreadsheets into one master report.
- Sign in to OceanSheet and verify your email address.
- Use a Google account that can read your source spreadsheets and edit the destination.
- Give each source table a clear first row of column headers. A source is one tab inside a spreadsheet; you can add several tabs as separate sources.
- Create a dedicated output tab for your master report.
From the dashboard, select Create workflow. The wizard has seven steps. Back and Continue move between them; Save draft keeps your unfinished setup in the current browser. Browser drafts are not shared between devices.
1. Give your workflow a name
Choose a name that tells you what the workflow does, such as Regional sales → Master report.
| Parameter | What it does |
|---|---|
| Workflow name | Required. Use 2–80 characters. This name appears on your dashboard and in run alerts. |
| Description | Optional, up to 240 characters. Note the purpose of the workflow or the reports it combines. |
Your unfinished name and settings are kept when you leave to connect Google and return to the same browser tab.
2. Connect Google and select source tabs
Select Connect Google Account if you have not connected Drive yet. Allow access to the files you select. Connecting Drive is separate from signing in to your OceanSheet account with Google.
Choose Add your first source, then Choose spreadsheet and tab. Previously authorized spreadsheets appear directly in OceanSheet. Use Browse Drive to grant access to another spreadsheet, choose the file in Google's Picker, and then select its tab in OceanSheet. Finish with Use selected sheet.
Each source also has a Data range:
| Range mode | When to use it |
|---|---|
| Entire used range | The default. OceanSheet reads the populated table and detects its headers. |
| Column range | Limit reading to columns, for example A:H. Include the header row in those columns. |
| Custom range | Read a specific rectangle, such as A1:H500. The first row of the selected range becomes the header row. |
Use Add another source once the current source is selected. Each source can be a different spreadsheet or another tab in the same file. The remove button deletes a source from this workflow, not from Google Drive.
3. Choose and align your columns
The Columns step previews each source and detects its headers and data types. The preview shows a few example rows; the workflow processes the configured source range when it runs.
- Included columns: clear the checkboxes for data you do not need. Select at least one column for every source.
- Refresh preview: read the source again after changing its data or checking access.
- Destination header mapping: rename a source header for the output. Leave it unchanged to keep its original label.
For example, map Customer email in one source and Email address in another to the destination header Email. Those values will share a single output column. Use consistent names when the columns mean the same thing, and distinct names when they do not.
4. Choose where results go
| Option | What it does |
|---|---|
| Use existing spreadsheet | Select an authorized spreadsheet and a destination tab. The connected Google account needs permission to edit it. |
| Create a new master spreadsheet | Enter a spreadsheet name and tab name. OceanSheet creates the file on the first actual run and reuses it afterward. The default new tab name is Master. |
| Starting range | An optional advanced setting. Leave it blank for headers at A1, or enter a starting cell such as B2. This changes the write position; it does not preserve other values on the destination tab. |
Keep the destination separate from your source tabs. A dedicated output tab is especially useful while checking a new workflow.
5. Configure writing, filters, and transformations
Choose how the output relates to existing rows
| Write behavior | Result |
|---|---|
| Append rows | Keep existing destination rows and add this run's output rows. Repeating a run with the same source data can add duplicates. |
| Replace data | Use this run's output as the destination table. Useful for a fresh snapshot of your sources. |
| Update existing rows | Also called upsert. Match rows using a Unique key, update matches, and add records with new keys. |
| Unique key | Shown for Update existing rows. Choose Email, Order ID, or Customer ID from the current beta options. Ensure that column is included, mapped consistently, and identifies a record in your output. |
All three modes currently write a rebuilt destination table. Append is a row-combination behavior, not a guarantee that unrelated destination cells are preserved.
Keep only the rows you need
Select Add filter, choose a source column, choose an operator, and enter a comparison value when required. A row must match every filter to continue. Filters use source header names, before destination mapping and output formatting.
| Operator | Meaning |
|---|---|
| Equals / does not equal | Compare the cell to the supplied text, without distinguishing upper and lower case. |
| Contains / does not contain | Check whether text includes the supplied value, without distinguishing case. |
| Greater than / less than | Compare numbers when both values are numeric; otherwise compare text. Use numeric source values for numeric filters. |
| After / before | Compare recognizable dates. Prefer unambiguous dates such as 2026-10-18. |
| Is empty / is not empty | Check for a missing or blank cell. No comparison value is needed. |
For sources with different headers, make sure the filtered column exists in each source where you expect rows to pass.
Advanced transformations & merge settings
| Parameter | What it changes |
|---|---|
| Trim whitespace | Remove leading and trailing spaces from text values in the output. |
| Ignore empty rows | Skip source rows that have no values in the selected columns. |
| Remove duplicate rows | Keep one copy of identical output rows within the data collected for this run. It does not remove copies from earlier Append runs. |
| Header case | Keep the original capitalization, use Title Case, or convert output headers to snake_case. |
| Date format | Format recognizable date-like text as YYYY-MM-DD, DD/MM/YYYY, or MM/DD/YYYY. Ambiguous input dates should be standardized in your source first. |
| Merge strategy | Union by destination header aligns values with the same mapped output header. Keep source column order is also shown in the beta, but the current processing engine still combines values by mapped headers. Use Union by destination header for the current supported behavior. |
6. Choose when the workflow runs
Manual runs when you select Run workflow. It is a good starting point while checking your output.
Scheduled runs automatically at the selected frequency: every hour, every 6 hours, daily, or weekly. These are recurring intervals, not a choice of a specific clock time. Your first scheduled run is due one interval after the enabled schedule is saved; actual start time also depends on the scheduler and queue.
The Workflow enabled switch controls automatic runs. A disabled workflow keeps its configuration without running on its schedule. You can pause it later from the dashboard. Scheduled access also needs a working Google connection and the deployed scheduling service.
7. Review and test before creating
Review your sources, output columns, destination, write behavior, schedule, and enabled state. Select Test workflow to check the source data, filters, and transformations without writing destination data or creating a new spreadsheet.
The test reports sources connected, rows found, rows that would be written, and rows filtered out. It is not a completed run and does not prove that a later destination write will succeed. Check the selected destination and editing permission too.
Select Create workflow when the required fields are complete. Creating a manually configured workflow saves its setup; select Run workflow when you want the first actual write.
Run once, check the result, then automate
Open the workflow and select Run workflow. A run moves from queued to running and then to successful or failed. Review the destination spreadsheet and the workflow's Run history, which keeps both successful and failed results, row counts, duration, and error details.
The notification bell focuses on failed runs, Google connection issues, and important account updates such as password changes. Successful runs stay in Run history without a bell alert or a run-result email. Failed runs can send an email when workflow email alerts are enabled.
Example: a regional sales master
- Add the North and South sales tabs as sources.
- Select Order ID, Customer, Date, and Amount; map matching headers to the same output names.
- Choose a new spreadsheet called Sales master, with a tab named Master.
- Choose Replace data for a fresh snapshot, or Update existing rows with Order ID when you need key-based updates.
- Start with Manual, test, create, and run once. Inspect the output before switching to a recurring schedule.
Common questions
Why does Google Picker ask me to sign in after connecting Drive?
OceanSheet's saved authorization and Google's browser sign-in screen are separate. The Picker may still need a browser sign-in. Use Close picker to return safely; choose Having trouble? for sign-in and reconnect options. A Google error callback is handled when reported, but OceanSheet cannot inspect Google's embedded screen to reliably identify the sign-in page.
Why is a spreadsheet missing?
Check the connected Google account. The built-in file list shows spreadsheets already authorized for OceanSheet. Use Browse Drive to choose another file and grant access, then Refresh files if the list is stale. A spreadsheet link alone does not grant permission to a new file.
Why did the output contain duplicate records?
An Append run adds the source output again. Use Replace data for a snapshot, or Update existing rows with a reliable unique key. Remove duplicate rows only deduplicates the collected output for the current run.
Why did a scheduled run fail?
Open Run history for the error. Common causes include an expired Google connection, removed spreadsheet access, a renamed or deleted tab, or a missing upsert key. Reconnect Google or correct the configuration, then test and run manually before relying on the schedule.
Where can I get help?
Use the question-mark icon in OceanSheet's header to send a subject and message. The book icon opens this documentation in a separate tab.
Build your first workflow
Start with one source, a dedicated destination, and a manual run.
Create a workflow →