Email Attachments MIME Increase in Size When Sent

posted 25 Jun 2012, 02:00 by Tristan Self   [ updated 25 Jun 2012, 02:03 ]

Ever got one of these bouncebacks when sending an email, its because the email is to big and goes over a limit. #< #5.3.4 smtp; 552 5.3.4 Message size exceeds fixed maximum message size> #SMTP#
These limits could be applied to your email server, your ISPs or your recipients. The lowest will be the one that bounces the email in its transport from A to B. So for example you try to send a 20MB email to your friend, but his server will only except emails that are 10MB, so your message will bounce and you get a message like the above.
Now you try again and send a 8MB email to your friend, remember the limit is 10MB, and to your surprise it bounces again. Whats happening?
Well its down to the conversion from binary (probably Base64 encoding) to MIME (used by SMTP on the Internet), this conversion increases the size of the email by up to 30%. So really you need to send an email of 7MB or less to be sure of getting it through.
The conversion of binary data to the text representation of binary data (used by SMTP on the Internet) means one hexidecimal byte is convered into one byte.
So that means.....
The binary data needs to be convered into printable ASCII characters to be able to be sent using SMTP, because of this a single byte of binary data's equvalient ASCII character will be larger, up to 30% larger in fact.
So think of this the next time you send a whopper email.
Some technical details of the conversion: