You attach a 15 MB proposal to a Salesforce email, hit send, and it bounces. The file is well under the 25 MB Salesforce file size limit, so what went wrong?

Salesforce File Size Limit Every Cap, the Hidden Math, and What Actually Works

Salesforce does not measure email size the way you'd expect. By the time your attachment is encoded for delivery, a 15 MB file can quietly become 20 MB. Add in the email body and a signature with a couple of images, and you're over the cap before you realize it.

That's just the email side. Salesforce also sets different file size limits for uploads, record attachments, Knowledge articles, and API calls. The numbers change depending on whether you're in Classic or Lightning. Miss the wrong one, and your workflow breaks with no obvious explanation.

This guide will help you have every Salesforce file size limit in one place, along with workarounds that actually hold up when files get large.

Every Salesforce file size limit in one place

Salesforce applies different file size limits depending on where you upload, how you send, and which experience your org runs. There is no single cap across the platform.

This table covers every major limit in one view.

File typeMaximum sizeNotes
Salesforce Files (Lightning)2 GBModern storage system. Applies to UI and REST API uploads.
Attachments on records (Classic)25 MB per fileLegacy system. Still active in orgs that haven't migrated to Files.
Documents tab (Classic)5 MB per fileStores logos, letterheads, and templates. Custom app logos cap at 20 KB.
Salesforce Knowledge articles5 MB per attachmentApplies to files attached inside Knowledge articles only.
Email messages (outbound)25 MB totalCovers the email body, headers, encoding, and all attachments combined.
Inbound Email-to-Case35 MB totalSalesforce rejects the entire message if it crosses this threshold. No partial delivery.
Chat file transfers5 MBApplies to Live Agent and Messaging sessions.
CRM Content (UI upload)2 GBFiles uploaded through the Content or Libraries tabs.
CRM Content (SOAP API)38 MBSignificantly lower than UI uploads.
CRM Content (Bulk API 2.0)150 MBHigher than SOAP but well below the UI limit.

How to find which limit is blocking you

The limit that catches most teams is email. That 25 MB cap looks generous until you realize it covers everything inside the message, not just the files you attach. A 15 MB PDF attached to a templated email with a few inline images can cross 25 MB before Salesforce attempts delivery. The next section explains exactly how that happens.

If your files upload fine to records but fail when you try to email them, the constraint is almost always the outbound email limit. If uploads themselves fail, check whether your org still uses Classic Attachments (25 MB) instead of Lightning Files (2 GB).

And if your automations break silently, look at the API method. SOAP caps at 38 MB, while REST handles up to 2 GB for the same operation. Same file, same org, completely different limits depending on the upload path.

Why files fail even when they look small enough

Salesforce email fails when the total encoded payload exceeds 25 MB, not when the attachment file size exceeds 25 MB. Two factors push files past the cap before you realize it.

How Base64 encoding inflates your attachments

Salesforce converts every email attachment from binary to a text format called Base64 before sending. This conversion increases the file size by roughly 33%.

File size on diskSize after encodingRemaining budget (out of 25 MB)
10 MB~13.3 MB~11.7 MB
14 MB~18.6 MB~6.4 MB
18 MB~24 MB~1 MB

That remaining budget covers everything else in the message: the HTML body, plain-text version, headers, inline images, and your signature. A templated email with a logo and a couple of social icons can consume 1 to 3 MB on its own.

An 18 MB file on your desktop leaves roughly 1 MB for the rest of the message. If your template uses anything beyond plain text, the send fails silently.

Use this formula to check before sending:

(attachment size × 1.33) + email body + headers + inline images = actual payload

To verify directly, send a sample email to yourself in a sandbox and check the email log for the actual message size. Based on this math, the safest practical ceiling for a single attachment in a templated email is around 13 to 14 MB.

Classic vs Lightning: where the confusion starts

The outbound email cap is 25 MB in both Classic and Lightning. Encoding applies identically in both. But Lightning adds a constraint Classic does not have: a maximum of 10 attachments per email. You could have 10 files totaling only 8 MB on disk, and Lightning still blocks the eleventh.

The bigger trap is contextual. A rep on Lightning uploads a 40 MB proposal to a Contact record. The upload works because Lightning Files supports up to 2 GB. Ten minutes later, the rep tries to email that same file from the record. The send fails.

The file was valid for storage but too large for outbound email, and Salesforce gives no warning when you attach it in the compose window. The error only surfaces after you hit send.

How to increase file size limits in Salesforce

Can you increase the Salesforce max file size for email? No. Can you adjust upload and storage limits? In some cases, yes. Here is exactly what moves and what doesn't.

Limits you can adjust

File upload size: Go to Setup > Files > General Settings. This controls the maximum file size users can upload through the Salesforce UI. You can set it up to the platform ceiling of 2 GB in Lightning.

Knowledge and related list attachments: Both default to lower caps (5 MB for Knowledge articles, 25 MB for the legacy Notes and Attachments related list). For either one, you canrequest an increase through Salesforce Support. These adjustments apply to file storage on records, not to outbound email.

Limits that are permanently fixed

These are the Salesforce attachment limits that cause the most frustration because no setting, edition, or support request can change them.

25 MB outbound email cap: Fixed across all editions. This covers the total encoded payload, not just the visible files. You cannot purchase a higher tier or request an exception.

10 attachments per email in Lightning: Fixed. No configuration option exists to raise this count. Classic does not enforce a count limit, but Lightning does.

35 MB inbound Email-to-Case cap: Fixed. Salesforce rejects the entire inbound message if it exceeds this. Oversized emails do not queue for manual review.

If the limit blocking your workflow falls in this second category, the only path forward is changing how you deliver the file, not how large it can be.

Practical workarounds for sending large files from Salesforce

Three approaches work for getting large files to recipients from Salesforce. Which one fits depends on how often you send, who receives the file, and whether you need to track engagement.

Compress or split the file before attaching.

ZIP compression can reduce text-heavy documents and spreadsheets by 20 to 50%. PDFs with embedded images barely shrink.

If compression doesn't get you under the cap, you can split files across multiple emails. It works in a pinch, but creates a messy experience for the recipient.

Best for: Occasional internal sends where tracking doesn't matter.

Not ideal for: Client-facing communication or recurring workflows.

Share a Salesforce Files link instead of attaching

Upload the file to Salesforce Files, then paste a download link into your email instead of attaching the file directly. You can generate a public link for external recipients through Content Delivery, or share internally through standard Salesforce file sharing.

Best for: Internal collaboration, portal users, and one-off large file delivery, where basic access is enough.

Not ideal for: You get no visibility into whether the recipient downloaded the file. Public links have no access controls beyond the URL. Manually generating links for every email doesn't scale for teams thatsend large files from Salesforce regularly.

Use a document management tool for trackable delivery

For teams that regularly send proposals, contracts, or reports to external contacts, link-based delivery with engagement tracking solves both the size constraint and the visibility gap.

MassMailer DOCS, a Salesforce-native document management tool, works this way. You store documents inside Salesforce, attach them to outbound emails as secure download links, and track opens, clicks, and downloads directly on the Lead or Contact record. The file never travels as an attachment, so size limits don't apply to the document itself.

This fits sales teams emailing large proposals, marketing teams distributing collateral throughmass email campaigns, or compliance teams sending policy documents where delivery confirmation matters.

Best for: Recurring external delivery, mass sends with large files, any workflow where you need proof that the recipient opened the document.

Conclusion

Salesforce file size limits are not going to change. Your workflow has to.

The teams that stop fighting the cap and switch to link-based delivery spend less time troubleshooting failed sends and more time on the conversations those files are supposed to start. Every bounced proposal or failed attachment is a delay your prospect didn't ask for, and your pipeline didn't need.

If your team sends large files to external contacts more than occasionally, the question isn't whether you need a better delivery method. It's how long you keep working around a problem that already has a clean solution.

MassMailer DOCS gives you that solution inside Salesforce, with full visibility into who received, opened, and downloaded every document you send. No external platform. No storage headaches.

Book a demo with MassMailer to see how it fits your Salesforce setup.