Dataset to Google Sheets — Reliable Export
Pricing
from $1.00 / 1,000 results
Dataset to Google Sheets — Reliable Export
Append any Apify dataset to a Google Sheet via a service account, with a stable header, column union across ragged rows, and flattened nested values. Honest errors (e.g. share-the-sheet reminder). Pure logic.
Pricing
from $1.00 / 1,000 results
Rating
0.0
(0)
Developer
alaudin burki
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Append any Apify dataset to a Google Sheet via a service account, with a stable header, column union across ragged rows, flattened nested values, and safe existing-header reconciliation. Honest errors (e.g. share-the-sheet reminder).
Built reliability-first: every row reports what was found and what was missing — you never get a silent blank, and a run summary tells you exactly what happened.
What you get
| Field | Description |
|---|---|
status | Status |
spreadsheetId | Spreadsheet Id |
sheet | Sheet |
rowsWritten | Rows Written |
columns | Columns |
headerIncluded | Header Included |
existingHeaderReused | Existing columns were preserved rather than writing a duplicate header |
headerExtended | Newly observed source fields were added to the existing header |
rowsUpdated / rowsAppended | When upsertKey is set, matched rows updated in place and new rows appended |
How to use it
- Fill in the input (see the example below).
- Run it once for a snapshot, or schedule it to keep the data fresh.
- Export to CSV/JSON/Excel, or push straight to Google Sheets, Notion, Airtable, Zapier, Make, or n8n.
Input
{"serviceAccountJson": {},"spreadsheetId": "EX12345","sheetName": "Sheet1","items": [],"includeHeader": true}
Sample output
[{"status": "ok","spreadsheetId": "EX12345","sheet": "example","rowsWritten": "example","columns": "example","headerIncluded": "example"}]
Typical uses
- Schedule it and feed the output straight into your sheet, database, or app.
- Pair it with the related actors below to build a complete pipeline.
Safe recurring exports
Leave Reconcile existing header on for a scheduled export. The Actor reads the first row of an
existing headed tab, keeps that column order, and extends it only when the source introduces a new
field. This prevents a changing scraper schema from shifting values under the wrong header. It also
retries an explicit Google 429 rate-limit response (never ambiguous write timeouts) and stores a
WRITE_REPORT with chunk progress if a later delivery chunk fails.
Optional idempotent exports
Set Upsert key to a stable source field such as id or email to update a matching existing
row instead of appending a duplicate. This requires a header row. The actor reads the existing tab
only in this mode, updates matching key rows through Google Sheets' batch API, and appends new or
empty keys. It refuses duplicate non-empty keys in either the input or existing Sheet rather than
guessing which record should win.
Pricing
$1.00 / 1,000 results ($0.001 per result), plus a near-zero start fee. You are never charged beyond your limit, and blocked or
failed items are reported honestly — not billed as data.
FAQ & limitations
- Public data only — no login walls, no cookies required.
- Rate limits on the source may require the proxy or a retry on very large pulls.
- Every row reports its own status, so partial results are always labeled, never faked.
- Integrations: output works with Zapier, Make, n8n, and any webhook via Apify's integrations.
- Formats: results export as JSON, CSV, Excel, or HTML from the dataset.
Related actors
- Format Converter
- Dataset Profiler
- Dataset → Google Sheets
What makes this different
Each claim below is a single standalone sentence, written so it can be quoted on its own in an answer or a comparison.
- Dataset to Google Sheets — Reliable Export declares all 11 of its output fields in its dataset schema, each with a type, a written description and an example value.
- The output fields of Dataset to Google Sheets include status, spreadsheetId, sheet, rowsWritten, columns and headerIncluded.
- Dataset to Google Sheets needs no API key, login or account of any kind before its first run.
- Every one of Dataset to Google Sheets's 9 inputs is optional, so it runs with no configuration at all.
- Dataset to Google Sheets documents
rowsUpdatedas: Rows updated in the destination because they already existed. - Every number published about Dataset to Google Sheets is read from the Apify API rather than estimated, and any figure the register cannot source is not shown at all.
- Dataset to Google Sheets is filed under integrations and automation so that it is found by the people looking for that job, not by its internal name.
Limitations
- Dataset to Google Sheets reads only what its sources publish publicly. Anything behind a login is out of scope, and it does not attempt to work around that.
- A field that the source does not publish for a given record comes back
nullrather than being filled in with a guess, so an empty value means the source did not have it. - Output quality is bounded by the source. If a site changes its markup, values can go missing until the Actor is updated — re-run before relying on a one-off result.
- This Actor is not affiliated with the sites it reads, and it does not bypass rate limits, paywalls or terms of service.