Skip to main content

Apify and Google Drive: auto-export scraped data

To send Apify data to Google Drive, use Apify's native "Upload results to GDrive" integration on an Actor or a saved Task. It writes the default dataset to an Apify Uploads folder as CSV, JSON, XLSX, or XML after each successful run. For multi-app flows use Make, Zapier, or n8n, and for full control use the Apify API plus the Google Drive API.

Updated 2026-09-09

Earlier versions of this page said Drive export needed a saved Task. It doesn't. Apify's own integration docs confirm the Integrations tab is available directly on the Actor — a Task is only useful if you want a fixed, reusable input configuration to run or schedule. Corrected throughout below.

Quick Answer​

Apify integrates with Google Drive natively: export scraped datasets as CSV, JSON, XLSX, or XML files directly to a Drive folder after successful runs.

The default destination is an Apify Uploads folder in the Google account you authorize. Configuration lives on the Actor or a saved Task built on it, under Integrations → Upload results to GDrive, consistent with Apify's Drive integration documentation: "Head over to the Integrations tab of your Actor or saved task." The integration is triggered by successful runs only.

How the integration works​

  • Trigger: Successful completion of a run from the Actor or Task that has Drive enabled (not ad-hoc behavior for runs started elsewhere).
  • Payload: The default dataset is exported as one file per run (format you select).
  • Auth: OAuth via Google; you can review or revoke connections in Settings → API & Integrations.

If you only need a one-off download, you can still use Dataset → Export in the Console and upload manually. The integration is for repeatable, hands-free delivery.

Three routes to Google Drive​

There are three realistic ways to get Apify results into Drive, depending on whether you want zero code, an orchestrated multi-app flow, or full programmatic control.

RouteNo-code?Best for
Native Drive integration (Actor/Task → Upload results to GDrive)YesDropping a dataset file into Drive per successful run, no other apps involved
Make / Zapier / n8n connectorYesDrive as one step in a larger flow (rename, notify Slack, branch on data)
Apify API + Google Drive API (code)NoCustom filenames, folder logic, shared drives, or moving key-value store files

Route 1: Native integration (no-code)​

Best when Drive is the only destination. Configure Upload results to GDrive on the Actor itself, or on a saved Task if you want a fixed, reusable input configuration (see the Setup guide below). Apify handles OAuth, format, and upload to Apify Uploads.

Route 2: Make, Zapier, or n8n (no-code orchestration)​

Use a connector when Drive is one stop among many. Each platform exposes Apify triggers (for example, a finished run) and a Google Drive Create File / Upload File action:

A typical flow: Apify run finishes, the connector fetches the dataset, then a Google Drive action uploads the file and a Slack step notifies the team. See all options in the Apify integrations overview.

Route 3: Apify API + Google Drive API (code)​

For full control, pull the dataset from the Apify API and upload it with the Google Drive API. Request the dataset in your chosen format:

# Download a dataset as CSV from the Apify API
curl "https://api.apify.com/v2/datasets/DATASET_ID/items?format=csv&token=YOUR_TOKEN" \
-o results.csv

The format parameter accepts json, jsonl, xml, html, csv, xlsx, and rss. Then upload results.csv with the Google Drive API (files.create) using your own OAuth credentials. This route lets you choose any folder, set custom names, target Workspace shared drives, or move arbitrary key-value store files that the native integration does not handle.

Setup guide​

Step 1: Connect Google Drive in Apify​

  1. Open the Actor you want to export — or a saved Task built on it, if you want a fixed input configuration you can reuse or schedule.
  2. Open the Integrations tab and select Upload results to GDrive.
  3. Click Connect with Google and complete sign-in to authorize Apify.
  4. Save and enable the integration. New uploads go to Apify Uploads in that Google account unless the product UI offers a different target for your workspace.

Step 2: Configure export on the Actor or Task​

  1. On the same Actor or Task, ensure Upload results to GDrive is enabled.
  2. Set file format: CSV, JSON, XLSX, or XML.
  3. Set file naming if the UI exposes templates (run ID, timestamp, etc.).
  4. Confirm when uploads fire: typically successful runs only to avoid empty error artifacts.

Step 3: Test end-to-end​

  1. Run the Actor or Task manually.
  2. Wait for Succeeded in the Apify Console.
  3. In Drive, open Apify Uploads and confirm the new file opens and matches row counts you expect.

Automate with schedules​

Pair Drive export with Tasks and schedules:

  1. Save your Actor configuration as a Task — recommended so the input is fixed and reusable, though a Schedule can also run an Actor directly.
  2. Enable Upload results to GDrive on that Task.
  3. Add a Schedule (daily, weekly, custom cron).
  4. Each successful scheduled run appends or adds files according to your naming rules, useful for price monitoring, news digests, or lead snapshots.

Example: A daily Maps or e-commerce Actor writes a dated CSV into Drive so stakeholders can open a living folder without logging into Apify.

Export formats​

FormatBest forNotes
CSVSheets, BI imports, quick sharingWidest compatibility
JSONAPIs, apps, nested fieldsPreserves structure
XLSXNon-technical reviewersEasy Excel open
XMLLegacy systemsHeavier files

Alternatives and complements​

  • Manual path: Run → Dataset → Export → upload to Drive (no integration).
  • Sheets: For editable tables, see Google Sheets integration.
  • Scale / warehouse: For large or programmatic pipelines, consider AWS S3 or Airbyte.
  • Zapier / Make: When Drive is one stop in a multi-app flow, Zapier or Make can orchestrate alongside or instead of the native connector.

Getting started​

  1. Create an Apify account (the free plan includes $5/month of prepaid platform usage, verified 2026-09-09).
  2. Enable Google Drive on the Actor or a saved Task, and authorize Google.
  3. Run once and confirm Apify Uploads in Drive.
Free tier

Use the Apify free plan to test Drive export on a small run before scheduling high-volume Actors — $5/month in usage is enough to confirm the flow works before you commit to a paid plan.

Frequently Asked Questions

On the Actor or a saved Task, open Integrations → Google Drive, configure OAuth, pick CSV/JSON/XLSX/XML, and run it. After a successful run, check the Apify Uploads folder in the Google account you connected.

Apify supports CSV, JSON, XLSX (Excel), and XML for the Drive integration. CSV is best for spreadsheets; JSON fits programmatic consumers.

Yes. Attach a Schedule to the Actor or Task that has Google Drive enabled — Schedules can run either directly. Each successful scheduled run uploads according to your integration settings.

Behavior depends on the current Apify Console options for your workspace. If the UI only mentions Apify Uploads under a personal account, assume My Drive unless Google Workspace shared-drive targeting is explicitly offered. Verify in the integration panel or Apify docs.

Common causes: the run failed or was aborted; Google Drive was not enabled on the Actor or Task you used; or OAuth expired or the wrong Google account is selected. Check the run status and the Integrations tab, then re-authorize Google if needed.

The standard Drive integration centers on dataset export. For arbitrary files in key-value stores, use manual download, the API, or a custom automation (e.g. Zapier/Make) to move blobs to Drive.

Use Drive when you want versioned files (CSV/JSON) per run. Use Sheets when people need to sort, filter, and comment inline. You can also combine both in a larger pipeline.

Yes. Use a no-code connector (Make, Zapier, or n8n) with an Apify run trigger and a Google Drive upload action, or pull the dataset from the Apify API and upload it with the Google Drive API in your own code. Connectors suit multi-app flows; the API route suits custom folders, filenames, and shared drives.

Call the Apify API endpoint https://api.apify.com/v2/datasets/DATASET_ID/items with format=csv (or json, xlsx, xml) and your token, then upload the downloaded file to Drive with the Google Drive API files.create method. This gives you full control over the destination folder and file naming.