⚡ Power Automate 📎 Exchange Online January 1, 2026 · 4 min read

Auto-Save Email Attachments to OneDrive
with Power Automate

Manually downloading email attachments is slow, error-prone, and a waste of your time. In this guide, you'll build a Power Automate flow that automatically saves every incoming attachment to a OneDrive folder — so files are always organised, backed up, and accessible without lifting a finger.

Why Automate This?

⏱️
Save 30+ min/day
No more opening emails, clicking download, and organising files manually.
🔒
Never lose a file
Every attachment is saved automatically — no more searching through old emails.
🗂️
Stay organised
All attachments land in one organised OneDrive folder, ready to share or access.

The Flow: Step by Step

This flow uses just two steps: a trigger (detecting a new email with an attachment) and an action (saving the file to OneDrive). Here's how to build it:

1

Create a new Instant Cloud Flow

Go to make.powerautomate.com and click + Create → Automated cloud flow.

Name your flow something descriptive, like "Save Email Attachments to OneDrive".
2

Set the trigger: "When a new email arrives (V3)"

This is the trigger that watches your inbox and fires whenever a new email lands.

Configure the following trigger settings:
  • Set Include Attachments to Yes — this is critical
  • Optionally set Only with Attachments to Yes to prevent the flow from running on emails without files
  • You can also filter by sender, subject, or folder to narrow when the flow fires
3

Add the action: OneDrive "Create File"

Click + New Step, search for OneDrive for Business, and select Create File.

Configure the three fields:
  • Folder Path — choose the OneDrive folder where attachments will be saved
  • File Name — from Dynamic Content, select Attachment Name
  • File Content — from Dynamic Content, select Attachment Content
🎉

Save and test

Click Save, then send yourself a test email with an attachment. Check your OneDrive folder — the file should appear within seconds.

Key Settings Reference

Setting Value to Use Why It Matters
Include Attachments Yes Without this, Power Automate can't access the email's attached files
Only with Attachments Yes (recommended) Prevents the flow from running on emails that have no files — saves run quota
File Name Dynamic: Attachment Name Preserves the original file name (e.g., invoice.pdf)
File Content Dynamic: Attachment Content This is the actual binary data of the file — required to save it correctly
⚠️
File name conflicts: If two emails arrive with an attachment named report.pdf, Power Automate will overwrite the first file. To prevent this, prefix the file name with the date — use an expression like concat(formatDateTime(utcNow(), 'yyyyMMdd-HHmm'), '-', triggerOutputs()?['body/attachments/0/name']).
💡
Multiple attachments: Power Automate automatically handles emails with multiple attachments — the flow will loop and save each file individually, so you don't need to add any extra steps.
🚀
That's it! In less than 10 minutes, you've set up a flow that saves you at least 30 minutes every single day. Once it's running, you never have to manually download an email attachment again.

Want a Custom Power Automate Setup?

We can build this flow for your team — with custom folder structures, filters by sender, Teams notifications, and more. All in English, all done for you.

Get a Free Consultation

More Power Automate Guides

⏱️ Power Automate
Track Employee Hours with Power Automate
📅 Power Automate
Formatting Dates & Times in Power Automate
🎓 Beginner
What Are Expressions in Power Automate?