Gmail to Google Drive: The Complete Integration Guide

Gmail and Drive are both Google products, which makes people assume they connect properly. They connect halfway. You can push an attachment into Drive with one click, and you can attach a Drive file to an outgoing message. What you can't do, from inside Gmail, is put an email into a Drive folder.
That gap is the reason this post exists. Below are the five ways people work around it, and what each one leaves behind.
Method 1: The Built-in Save to Drive Button
Hover over any attachment in Gmail and a small Drive icon appears. Click it, pick a folder, done. The file goes to Drive.
This is the right tool when the file is the whole point. A signed contract, a design export, a spreadsheet someone sent you.
Its limit is that the file arrives with no context. Six months later Proposal_v3_FINAL.pdf sits in a folder and you have no idea who sent it, when, or what they said about it. The conversation stayed in Gmail.
There's also no automation. Every save is a manual click, so it only covers the emails you happen to be looking at.
Save emails in seconds
Forward any email to your Quicktion address and it lands in Notion, Google Sheets, Airtable, Linear, Trello, or Google Drive automatically.
Method 2: Print to PDF, Then Upload
The manual full-email option. Open the message, click the print icon at the top right, and pick "Save as PDF" in the print dialog. Then upload the file to Drive.
You get a real record: header block, body, formatting. The cost is your time and your discipline. It's roughly 40 seconds an email, the attachments have to be saved separately, and the naming is whatever you type in the save dialog at 6pm on a Friday.
I've watched people run this system for a month and then quietly stop. It's not that it doesn't work. It's that it requires you to keep working.
Method 3: Google Apps Script
If you write a bit of JavaScript, Apps Script can do this for free. A time-driven trigger searches a Gmail label, and for each message you convert the HTML body to a PDF blob and drop it into a folder:
const blob = Utilities.newBlob(message.getBody(), "text/html")
.getAs("application/pdf")
.setName(message.getSubject() + ".pdf");
DriveApp.getFolderById(FOLDER_ID).createFile(blob);
That's the happy path, and it genuinely works. The parts that eat your weekend come after:
- The converter renders only the string you hand it. It doesn't fetch remote URLs, so every hosted image in the email renders as a broken box until you download and inline each one as a data URI yourself.
- Attachments need their own loop, and Drive file naming collisions need their own handling.
- Apps Script has execution time and trigger quotas. When you cross one, the script stops and doesn't tell you. You find out weeks later.
- Any teammate who needs the same thing needs their own copy of the script and their own trigger.
Worth doing if the tinkering is the fun part. Not worth doing if you need it to be reliable and you'd rather spend the weekend outside.
Method 4: Zapier or Make
Both can watch Gmail and write to Drive. The Zap looks like: Gmail trigger, filter, "Upload file to Google Drive."
Where it works: copying attachments into Drive folders on a rule. That's a well-trodden path with plenty of templates.
Where it doesn't: the message body. Zapier hands you the email body as plain text or raw HTML. There's no "render this email as a PDF" step, so you either store the body as a text file or bolt on a third-party HTML-to-PDF service and pay for that too. Add polling delays of 5 to 15 minutes and per-task billing, and it's a lot of moving parts for a file copy.
Pick Zapier when the email also has to fan out somewhere else, like a Slack ping and a project task in the same run.
Method 5: Quicktion (Add-on or Forwarding)
I build Quicktion, so read this section with that in mind. It does the specific thing the other four don't: it saves the email itself, with its attachments, as one unit in Drive.
Each saved email becomes a subfolder:
Client Work/
2026-08-12_Statement of work, Q3/
email.pdf
email.html
SOW-Q3-signed.pdf
email.pdf has a header block with sender, recipient, date, and subject, then the rendered body with images embedded rather than hotlinked. email.html is the prepared HTML, kept for messages whose layout is too elaborate to render perfectly. Attachments keep their original filenames.
Setting it up
- Sign up at quicktion.io and connect Google. The Drive permission is limited to files Quicktion creates and folders you pick yourself.
- Create a Drive destination. Choose a folder with the Google picker, or let Quicktion create one.
- Optionally change the folder name pattern. Default is
{date}_{subject};{sender}and{domain}are available if you'd rather group by who sent it. - Save emails one of two ways.
From the Gmail add-on: install Quicktion from the Google Workspace Marketplace, open any email, click the icon in the right sidebar, pick your Drive destination, hit save. The add-on creates its folder automatically, named Quicktion — {destination name}. Folder picking and name patterns live in the dashboard, since the sidebar card has no room for a token builder.
By forwarding: every destination has an address like abc123@in.quicktion.io. Forward a message there and it saves within seconds. Set a Gmail filter to forward automatically and the whole thing runs without you.
What it doesn't do
- No Shared Drives yet. My Drive folders only. Share the folder with your team afterwards if you need to.
- No OCR. Scanned PDFs go in as they arrived; Drive's own indexing is what you get.
- No backfill. Emails are saved from the moment you forward or click, not retroactively.
- No preview thumbnails per email. Drive previews the PDF itself, which covers the same need.
- Inline images (signature logos, tracking pixels) appear inside the PDF but not as separate files, so folders stay readable.
Side by Side
| Drive button | Print to PDF | Apps Script | Zapier | Quicktion | |
|---|---|---|---|---|---|
| Saves the message body | No | Yes | Yes | Text only | Yes, as PDF |
| Saves attachments | Yes | Manually | With extra code | Yes | Yes, same folder |
| Body and files kept together | No | No | If you build it | No | Yes |
| Remote images survive | n/a | Yes | Only if you inline them | No | Yes |
| Automatic | No | No | Yes | Yes (5-15 min delay) | Yes, seconds |
| Works outside Gmail | No | No | No | Gmail trigger only | Yes, any client |
| Setup | None | None | Hours | 15-20 min | ~2 min |
| Cost | Free | Free | Free plus your time | $19.99+/mo | Free to 25/mo, $12/mo Pro |
Picking One
If you need occasional attachment saves, use Gmail's Drive button. It's already there and it's good at that job.
If you need the full record and it's a handful of emails a year, print to PDF and move on with your life.
If you need it to keep happening (every invoice, every signed contract, every client thread) without anyone remembering to do it, use forwarding with a filter. That's the case Quicktion is built for, and it's the only one of these methods that also covers mail arriving in Outlook or on your phone.
Apps Script and Zapier both make sense when you have a requirement that's genuinely yours. Custom folder logic per sender domain, or a workflow where the email also has to create a task somewhere.
Getting Started
Connect Google and create a Drive destination. Forward one email, look at the PDF, and decide from there. Free plan is 25 emails a month.
If you want the email data in rows or database records rather than files, the same address works for Google Sheets, Notion, and Airtable. And if what you're really after is just the attachments in a tidy folder, the save email attachments to Drive guide covers that setup.
Ready to put your emails where they belong?
Quicktion lets you forward emails or use the Gmail add-on to save messages to Notion, Google Sheets, Airtable, Linear, Trello, or Google Drive. No code required.
Leandro Zubrezki
Founder of Quicktion
Building tools to bridge the gap between email and the tools you already use. Leandro created Quicktion to help teams save time by automating email workflows across Notion, Google Sheets, Airtable, Linear, Trello, and Google Drive.
Related Posts

Gmail to Airtable: 4 Ways to Connect Gmail and Airtable
Connect Gmail to Airtable with these 4 methods. Compare Gmail add-ons, email forwarding, Zapier, and Make to find the best way to save Gmail emails to an Airtable base.

Gmail to Google Sheets: 4 Ways to Connect Gmail and Sheets
Connect Gmail to Google Sheets with these 4 methods. Compare Gmail add-ons, email forwarding, Google Apps Script, and automation tools to find your best fit.

Gmail to Notion Integration: 4 Ways to Connect Gmail and Notion
Connect Gmail to Notion with these 4 proven methods. Compare Gmail add-ons, email forwarding, Notion Mail, and automation tools to find your best fit.