Skip to main content

Transfer files from FTP server to Google Drive

Workflow preview

Workflow preview
100%
Transfer files from FTP server to Google Drive preview
Open on n8n.io

Important notice

This workflow is provided as-is. Please review and test before using in production.

1. Workflow Overview

FTP to Google Drive Transfer Template What This Template Does This workflow automatically transfers files from an FTP server to Google Drive. It's perfect for: Backing up files from remote servers ...

Best for

  • File Management automation workflows
  • intermediate n8n builders looking for reusable templates

Tools used

n8n-nodes-base.manualtrigger, n8n-nodes-base.stickynote, n8n-nodes-base.ftp, n8n-nodes-base.if, n8n-nodes-base.googledrive, n8n-nodes-base.noop

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Dariusz Koryto.

Original n8n.io source

1.1 Workflow description

Title
Transfer files from FTP server to Google Drive
Workflow name
Transfer files from FTP server to Google Drive

FTP to Google Drive Transfer Template

What This Template Does

This workflow automatically transfers files from an FTP server to Google Drive. It's perfect for:

  • Backing up files from remote servers
  • Migrating data from FTP to cloud storage
  • Automating file synchronization tasks
  • Creating scheduled backups of server content

How It Works

The workflow follows these steps:

  1. Manual Trigger - You start the process by clicking "Execute"
  2. Lists FTP Directory - Scans the specified FTP folder for all items
  3. Filters Files Only - Separates actual files from directories (folders)
  4. Downloads Files - Retrieves each file as binary data from the FTP server
  5. Uploads to Google Drive - Stores all downloaded files in your specified Google Drive folder

Requirements

Before using this template, you'll need:

  • FTP Server Access: Server address, username, and password
  • Google Drive Account: With OAuth2 authentication set up in n8n
  • n8n Instance: Self-hosted or cloud version

Setup Instructions

Step 1: Configure FTP Credentials

  1. In n8n, go to SettingsCredentials
  2. Create a new FTP credential
  3. Enter your FTP server details:
    • Host: Your FTP server address
    • Port: Usually 21 for FTP
    • Username: Your FTP username
    • Password: Your FTP password
  4. Test the connection and save

Step 2: Set Up Google Drive Authentication

  1. Create a new Google Drive OAuth2 credential
  2. Follow n8n's Google Drive setup guide:
    • Create a Google Cloud project
    • Enable Google Drive API
    • Create OAuth2 credentials
    • Add your n8n callback URL
  3. Authorize the connection in n8n

Step 3: Configure the Workflow

  1. Update FTP Path:

    • Open the "List FTP Directory" node
    • Change the path parameter from /_instalki to your desired FTP folder
  2. Set Google Drive Folder:

    • Open the "Upload to Google Drive" node
    • Replace the folderId with your target Google Drive folder ID
    • To find folder ID: Open the folder in Google Drive and copy the ID from the URL
  3. Assign Credentials:

    • Ensure both FTP nodes use your FTP credential
    • Assign your Google Drive credential to the upload node

How to Use

  1. Test First: Run the workflow manually with a few test files
  2. Monitor Execution: Check the execution log for any errors
  3. Verify Upload: Confirm files appear in your Google Drive folder
  4. Schedule (Optional): Add a schedule trigger if you want automatic runs

Customization Options

Filter Specific File Types

Add a condition after "Filter Files Only" to process only certain file extensions:

{{ $json.name.endsWith('.pdf') || $json.name.endsWith('.jpg') }}

Add Error Handling

Insert error-handling nodes to manage failed downloads or uploads gracefully.

Organize by Date

Modify the Google Drive upload to create date-based folders automatically.

File Size Limits

Add checks for file size before attempting upload (Google Drive has limits).

Troubleshooting

Common Issues:

  • FTP Connection Failed: Check server address, port, and credentials
  • Google Drive Upload Error: Verify OAuth2 setup and folder permissions
  • Files Not Found: Ensure the FTP path exists and contains files
  • Large Files: Consider Google Drive's file size limitations (15GB for free accounts)

Tips:

  • Test with small files first
  • Check n8n execution logs for detailed error messages
  • Ensure your Google Drive has sufficient storage space
  • Verify FTP server allows multiple concurrent connections

Security Notes

  • Never hardcode credentials in the workflow
  • Use n8n's credential system for all authentication
  • Consider using SFTP instead of FTP for better security
  • Regularly rotate your FTP passwords
  • Review Google Drive sharing permissions

Next Steps

Once you have this basic transfer working, you might want to:

  • Add email notifications for successful/failed transfers
  • Implement file deduplication checks
  • Create logs of transferred files
  • Set up automatic cleanup of old files
  • Add file compression before upload

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - Manual Trigger

Type / Role
n8n-nodes-base.manualTrigger - manualTrigger
Config choices
Version 1

Block 2 - Workflow Documentation

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 3 - List FTP Directory

Type / Role
n8n-nodes-base.ftp - ftp
Config choices
Version 1

Block 4 - Processing Notes

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 5 - Filter Files Only

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2

Block 6 - Download File from FTP

Type / Role
n8n-nodes-base.ftp - ftp
Config choices
Version 1

Block 7 - Upload to Google Drive

Type / Role
n8n-nodes-base.googleDrive - googleDrive
Config choices
Version 3

Block 8 - No Operation, do nothing

Type / Role
n8n-nodes-base.noOp - noOp
Config choices
Version 1

Block 9 - No Operation, do nothing1

Type / Role
n8n-nodes-base.noOp - noOp
Config choices
Version 1

3. Summary Table

Workflow Transfer files from FTP server to Google Drive
Complexity intermediate
Nodes 9
Categories File Management
Author Dariusz Koryto
Published 21 Jul 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/6244/6244.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Transfer files from FTP server to Google Drive do?

FTP to Google Drive Transfer Template What This Template Does This workflow automatically transfers files from an FTP server to Google Drive. It's perfect for: Backing up files from remote servers ...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your File Management use case.