A few years ago, Google announced it was ending support for the Exchange ActiveSync Protocol (EAS) for most users. Now those of us who were grandfathered in have changed devices, and likely lost that grandfathered status. So how do you get Gmail pushed to your iOS device without having to download the Gmail app – or giving up the built-in mail client? It’s pretty simple – you resort to the only free email option that Apple provides push to – a secondary iCloud account. But what about that pesky “iCloud won’t let you send as another address” problem? Simple fix – use GMail’s SMTP server.
Receiving mail sent to your Gmail address in iOS’s built-in mail client with push speed (no Fetching!) & Sending mail with your Gmail address (or custom alias).
- This method will likely be somewhat annoying if you’re a heavy Gmail in the browser user, since most of your inbox will live in iCloud. This method works best if you use mail clients on your mobile devices and desktop, and rarely use webmail.
This method isn’t as nice if you have a Gmail account that you use to send out as another user (i.e. email@example.com but you usually send as firstname.lastname@example.org). I explain this in more detail below, but it boils down to this: Your device won’t be able to tell Gmail what to send out as, so Gmail will assume you want to send as your primary address. If you’re a Google Apps Free user, then this method will work fine.I was actually wrong about this one – this works fine as long as you have your preferred FROM header selected as the default account in Gmail’s settings. So if you don’t already, log in and click the Make Default link next to your desired FROM account in the “Accounts & Import” tab in settings.
Here’s what you need…
- A Gmail account that has IMAP enabled (Check your Gmail settings). You’ll need the username (your complete @gmail.com or @customdomain address) and the password (or an Application Password if you use Google’s 2-factor authentication.
- A secondary iCloud account (See the steps below to create one)
On the iPhone / iPad / iOS Device
I’m using iOS 7 on an iPhone 5 for these screenshots. The steps should be more or less the same
- If you don’t have one, set up a secondary iCloud account. I suppose you could use your primary one, but I prefer to keep the mail / inboxes separate
To do this, go to Settings on your iOS device and tap on Mail, Contacts, & Calendars. Then tap “Add Account”, then “iCloud”, then “Get a Free Apple ID”
Go through the enrollment process and note your new iCloud username and password. You’ll need the username later when you set up your Gmail address to forward to it.
- Set up this secondary iCloud account to send through Gmail’s SMTP server (smtp.gmail.com, port 587, Use SSL set to On)
To do this, go back into Mail, Contacts, & Calendars, and tap on your secondary iCloud account. Then tap on the account name once more to go to the Account page. From there tap on “Mail” under the advanced settings. Then tap on SMTP.
Now that you’re in the SMTP screen, tap Add Server, and fill in your hostname (smtp.gmail.com) and your full Google Gmail username (email@example.com or firstname.lastname@example.org) and password. If you’re using 2-factor authentication, you’ll need a dedicated application password. Once all the info is verified, you should see an entry under “Other SMTP Servers” for smtp.gmail.com.
You will need to go into both the iCloud & Gmail SMTP servers, setting iCloud to Off, and Gmail to On. In the end, your screen should look like the third picture below:
OK, now you’re done.
Basically we’ve told that iCloud account to send out through Gmail. Google’s servers force all outgoing mail on an account to be through either the default FROM address (your account’s address OR the address you selected as default on the Accounts & Import tab in Gmail’s settings)) or an alias, so in this case, while iCloud will want it to go out as email@example.com, it will be changed by Gmail to firstname.lastname@example.org.
If you have an alias that isn’t your primary Gmail address, you’ll likely not be able to use this setup since iCloud won’t let you change the “from” address. However you can set up a regular IMAP account on your device with your Google credentials and change the “FROM” address. The only issue is that replying to messages won’t be seamless – you’d have to manually select to send your reply through your IMAP Gmail account, not your secondary iCloud email account, which is messy. Therefore if you have a gmail account with a custom alias you want to use, these steps might not be any easier for you than just resorting to non-push email. As I said above, I was wrong on this one – just make sure you have the address you want your email to come from set as your default address on the Account & Import tab in Gmail’s Settings.
On Gmail’s Website
Now you need to get your Gmail pushed to your new secondary iCloud email. You can do this in Gmail’s settings by forwarding all of your mail to your new iCloud address. I then set Gmail to archive my mail, using a filter, so it’s out of my Gmail inbox (my iCloud inbox becomes my “working” inbox).
In the end, as a bonus, you also can get backups of your mail. Basically you’ll have a copy on both Google’s Gmail servers and Apple’s iCloud servers, so if one is down for any length of time, you can use the other (Although sending through iCloud.com will use your iCloud email address, not your Gmail address). In my setup, I have a similar configuration on my desktop using Apple Mail – but if you’re a heavy webmail user, it could be distracting to manage two inboxes.
In a few years if you max out your storage on iCloud, then simply create a new iCloud secondary account, and keep your first secondary account’s information if you need to use those older emails.
Hope this helps you – in the end I now have the solution I want: I send out as my custom email address, and receive at the same address in real-time. Sure I’m leveraging two clouds to do it, but who said life was easy 🙂
87 Replies to “Get True Push Gmail on Your iPhone or iOS Device”
Was this on IOS7? I have slightly different screens.
This was on iOS 7, perhaps carrier build differences? Should be very similar.
No way to sync old history – this will just get new email from setup time forward.
When I enter my name (email@example.com) and password in the SMTP settings it will not verify. It keeps sying theusername and password are incorrect. But I know they are correct.
Make sure you have IMAP enabled in gmail – that may make a difference. Also if you’re using two-factor authentication, you need to use an app specific password that you generate.
Make sure you have IMAP enabled in Gmail – that may make a difference. Also if you’re using 2-factor authentication, you’ll need to use an app specific password that you generate.
it works fine. the only problem is that alias addresses connected to the main gmail address can’t be forwarded…
if theres a way to connect them aliases as well – i would be glad to hear about
I brainstormed this exact strategy today for my email solution. I was about to give up and settle for 15 minute fetch for my custom domain email. Luckily, I’m persistent and searched the internet and found your article with a complete walkthrough. It’s actually more simple than I thought. Thanks, a lot!
I caught a snag. It seems the mail app is attempting to send through my secondary smtp server, but from my iCloud.com address. I’m getting a an error telling me it can’t connect to the server.
I’m on iOS 8.0.2 and I’m using my primary iCloud account since I don’t use that email for anything. Got any ideas here?
Disregard the other reply. Delete it if necessary, and this one as well. I omitted some information. I was attempting to use an smtp server from zoho.com. I then tried one of my gmail accounts and it worked. There may be an issue with the soho smtp server or the authentication I was using.
Thanks again for this tutorial, Jon.
Thanks so much for the article/tutorial! Just some quick questions, after setup, do all new emails only go to the icloud account or will a copy be in your normal gmail on the web account?
Do changes made on your ios device now get synced with both icloud and gmail account, for example emails deleted from your device through the mail app are deleted from the cloud as well?
Emails will go to both iCloud & a copy will be in Gmail, unless you tell Gmail not to keep the copy. Since Gmail accounts are pretty cheap, I keep the copy just to have extra backups. However you could change the forwarding setting in Gmail to do whatever you like:
And changes made on your iOS device will get synced to the iCloud account but will not get synced to the Gmail account. Your example is correct: emails deleted from your device through the mail app will be deleted from iCloud – but they won’t be deleted from Gmail.
Hope this helps!
Awesome write up. I have a question. If I use 2 gmail accounts, 1 personal and 1 for work will I need to set up 2 alt iCloud accounts so I can have each email I reply to come from the appropriate gmail address?
Yep, you’re right – you’d need 2 separate iCloud accounts with 2 separate Gmail SMTP configurations to get the FROM headers right. a pain to set up, but in the end, easy to use!
Not sure if this helps, but I too have 2 gmail accounts and all I did was configured the new iCoud account smtp settings on my iPhone for both gmail accounts and my replies to come from the appropriate gmail address?
Does this method sync all folders and previously saved emails or would this apply to only new incoming mail?
Unfortunately it only applies to new incoming email.
As for my Mail in OSX, do I need to add the “secondary” mail? or I am good with the existing gmail account that I added to my Mail app?
Thanks a lot!
I would add the second account to Apple Mail (That’s what I do). Otherwise you won’t have a sync’ed inbox between iOS and Mac OS.
This was a big help. I ran into the gmail SMTP error dialog. Found out that your Google acct has a setting for “Access for less secure apps”. If it’s enabled, it blocks the Apple mail app from accessing the gmail SMTP. If you go to your Google acct settings and select the Security section, then under Account Permission box you’ll see the “Access for less secure apps”. turn it off. I restated my phone and it worked.
Thanks for letting us know about this! I had no such setting in either of my Gmail accounts, but I can see how it might be problematic!
Super helpful, thanks!
hello. i have a question. my primary iCloud acc uses the gmail mail that i want to push.. is there anything i can do?.. because it doesn’t allow me to add the same mail acc as a secondary… thx!
You could use your primary iCloud account instead of a secondary. Just set it to send out through GMail’s SMTP Server instead of the built-in iCloud SMTP.
hi, thx for your answer, in the primary iCloud acc, i can’t change the smtp or anything in the configuration of the acc. any ideas???, thx!
I just checked and I can – you may need to add a new SMTP server first before you can toggle it.
Hi Jon. Using this method, is it possible to use G-Mail’s filters instead of iCloud’s filters? I can get G-Mail to filter, but I can’t get it to ‘not’ forward filtered mail, which means I still get all e-mail forwarded to iCloud. I only want non-filtered e-mail forwarded to iCloud.
That is one problem I’ve run into. One option would be to turn off all forwarding and use gmails filters to only forward the desired mail, assuming you can cast a wide yet specific net with gmail filters.
Thank you SO much! You are a genius, you have no idea how relieved I am. I can’t believe it worked and I didn’t mess it up, thank you for the step-by-step, wonderful, explanations, I am incredibly grateful and forever in your debt for this.
Glad that it helped you!
Thanks Jon, I don’t think it’ll work for me though. Too bad there isn’t a work-around. Looks like I’ll have to store my messages on iCloud if I want to use rules/filters.
Or just use the free Mailbox app to get true push email for your new iOS device???
Yes, you could also use the Gmail app, however my frustration with both of these apps is that they have lag between the time I open them and the time I see my email. I prefer the built-in mail client to avoid this.
Jon-thanks for this work around. I have a verizon.net email. Is it possible to use this instead of an Icloud email?
If you have the ability to forward your Verizon.net email to an icloud account, and access to Verizon’s SMTP server, then yes, you could use verizon.net in place of your gmail account. In place of your icloud account would be difficult since verizon.net doesnt push (as far as I know) to iOS.
Thank you so much Jon! You don’t know all the things I tried to get my push Gmail messages on my new IPhone 6. I even started hating that new phone because I could not get my emails instantly.
You are a genius, my friend!
I have a little question regarding the above setting change in Gmail (Google acct has a setting for “Access for less secure apps). Do you think it is really unsafe to keep it disabled?
The “less secure apps” that Google talks about are those that do not support the latest authentication standards. However since these standards are fairly new, I’m personally not worried about enabling it. In general it’s a great setting to have enabled if you only use Gmail through the web interface, but most third-party mail clients won’t support it.
For what it’s worth, I haven’t tried enabling it and testing – the solution above may work if it’s enabled. I probably just disabled it at some time for some other reason. If you enable it and your setup still works, let me know and I’ll edit the article.
Hi Jon. I have setup the above and all is working *fairly* well. One further complication is that I want to use my own domain’s smtp servers on outgoing emails, and have setup Gmail to do this for a long time now (which is also the default setting within gmail). On testing, recipients receive emails from me appearing ‘firstname.lastname@example.org on behalf of email@example.com‘
I would have thought that asking icloud to force send through gmail servers (which in turn are set to using my domain’s smtp settings) would negate the ‘on behalf of issue’. But for the moment it would appear not. Can you help?!?!
Instead of using Gmail’s SMTP server, use your own domain’s SMTP servers (i.e. From your webhost or server) instead of gmail’s.
That did occur to me, but I would like to have my sent items appearing within gmail. Can this be done?
Try turning on the BCC setting in general mail settings- that might work. Otherwise it might be a one or the other situation.
Yes will give that a go. Thank you!
Hi Jon, I tried to disable the “Access to less secure apps” in Gmail and I still can receive my Gmail messages through that new iCloud account on my iPhone, which is an excellent news.
From my very modest experience, I would conclude that, if the above instructions don’t work for some, they could try to first enable that “Access to less secure apps” in Gmail, then follow the steps you mention (on the iPhone), and finally disable the “Access to less secure apps” in the Gmail account. (Of course, I would make some tests before disabling-back that “Access to less secure apps” in the Gmail account.)
Thanks for the update!
When I send an email from my new icloud address it does not say it is from my @gmail account. Can you please help me?
You’ll need to set up the outgoing SMTP server on your iOS device as I show in the blog post, otherwise the email will go out through iCloud and will not show your Gmail address.
I feel that I did. Is it possible that this no longer works?
I’ve done it multiple times with different accounts.
It’s still working fine for me – I’d check to make sure the iCloud SMTP server is switched Off, with only the Gmail SMTP server switched on. If both are switched on, then iOS will use the iCloud one by default.
Thanks. I will see what I am doing wrong. I really want this to work.
Does it work if you set a new one up?
I haven’t tried setting a new one up, although I’m not sure why it wouldn’t work since all the options are still there and if you send through SMTP it’s not something Apple can override. Check the headers of email that are coming through to see if they’re going through Apple’s SMTP servers or Gmails – if they’re going through Apple, then it has to be that the iCloud SMTP server is still active.
Can you please try setting up a new one, because I have tried it about 15 times. I even deleted my gmail account from my iPhone because they used the same SMTP. Thanks and I am very sorry for all of your time I am taking.
I’ve done a few tests, but haven’t done a full setup. Before I do, can you confirm something:
Go to Settings -> Mail, Contacts, & Calendars
Then tap on the new iCloud account you set up to send/receive your Gmail in.
On the next screen, tap on the account name, and it should give you a screen that shows the ICloud Account Information at the top, and an “Advanced” line below. Tap on the line that reads “Mail”.
On the next screen, you should see “Outgoing Mail Server” section, and then “SMTP – smtp.gmail.com”. Does it read that, or does it read “SMTP – iCloud SMTP Server”?
Yes it does.
Thank you very much for all of this.
OK, if it says that then it should be going out through smtp.gmail.com and thus have your gmail FROM address – Try sending again from that account on your device to a different email address (i.e. a throw-away) and look at the headers on that email to see if it did indeed go out through smtp.gmail.com and if the FROM header lists your gmail information or iCloud.
It says it is was sent by my icloud address. Have you gotten a new one to work?
Can you send me the headers from your test email using the contact link above? I’ll see if I can see what might be the cause.
Are you still using iOS 7? Which version? Searching around some people got this to work, but then when they upgraded it stopped working.
It says from @icloud.com
I thank you so much for helping me. There is no reason that you have to be doing this. But if you can get a new one to work on your iPhone than the problem is with me. If not, the system has changed.
I’m on iOS 8.1.1 right now. I’ll try to work more on this later today – it’s our last week before finals right now, so I’ve been pretty swamped with student concerns. If you can send me the header to your test email, or links that you’re found that have people having a similar problem, those would be helpful. If I’m in some way “grandfathered” in, a new account might work just fine for me, but not others.
Thank you very much. I am sorry to be bothersome. I am just excited about this ability and feel that I am not able to get it due to no fault of my own.
Brian, I went back through and set up a new account. It sent without a problem, using the Gmail address. As long as the Gmail SMTP server is set up correctly (I ran into an issue with a new Gmail account that had SMTP disabled since it was infrequently used, but my existing gmail accounts worked fine) – so if you didn’t get any error when adding it in, you should be fine.
I did notice that when it sent it had my name listed as what I’d put on the new iCloud account, even though the email address was listed as my Gmail account. It’s possible if you used two different styles of name that the Name part of the FROM header is from iCloud and the email address is from Gmail. Otherwise things seem to be working fine for me.
Again, I’d check the headers of the messages you’re sending to make sure they’re going through smtp.gmail.com and not iCloud’s SMTP servers.
take note, from support.google.com: the “Sent from firstname.lastname@example.org on behalf of email@example.com” issue:
……If the address you’re adding is hosted by Google (either a Google Apps account or a @gmail.com address), your original address will still be included in your email header’s sender field to help prevent your mail from being marked as spam. Most email clients don’t display the sender field, though some versions of Microsoft Outlook may display “From firstname.lastname@example.org on behalf of email@example.com.”…..
I am sending mail through smtp.google.com which is then, in turn, sending the email on through smtpout.secureserver.net (a godaddy smtp server for people who have domains through godaddy) and some email clients show emails from firstname.lastname@example.org and others show email@example.com on behalf of firstname.lastname@example.org.
At any rate, push is working so im happy. dont sweat the small stuff 🙂
when I look at the emails in most clients, it says sent from email@example.com. Its only when I look at emails in outlook that I see the sent from firstname.lastname@example.org on behalf of email@example.com.
so, all is good.
So first off, thank you. It’s an interesting strategy and it works…sort of… but how did you get around the on-screen notification not showing? All I get is an audio notification (which is fantastic….it’s at least something). But, I’d really also love to actually SEE the email pop up on the screen so I can see who emailed me and the subject line etc… but nothing pops up at all….????? What gives…???? Did I do something wrong or….?
Oh, and thanks to whoever figured out the Restricted Apps problem. That messed with me too. Friggin Gmail….
Oops….ignore that please. I was certain I had it activated in Notifications center but I was looking at the wrong email address (cuz they both look the same before the @…. I’m an idiot.)
Thanks dude. Great tutorial and works great. Sucks that you don’t get the folders but no biggie for my purposes.
Hey Jon … Good stuff… I am close, however, when sending, even though it have iCloud off and gmail on… When I receive the email, it says from @icloud instead of @gmail
I don’t see “Accounts & Import tab in Gmail’s settings” to tell gmail to use a specific acct
Receiving accounts will still say @icloud in description, but the FROM header should be from gmail.com – not sure where exactly you’re still seeing the @icloud. I also don’t see anything for accounts and import, so I’m not sure what settings you’re referring to on the iPhone / iPad.
Sorry, i wasn’t very clear…typing on an iPhone. Here is issue. When I reply to an email in iCloud …per your directions, it goes thru gmail SMTP (cloud = off, gmail smtp= on)…and when i receive that on a hotmail acct, it is ‘from’ iCloud acct. (ie firstname.lastname@example.org)
What setting am I missing to make gmail smtp send email as “bob@gmail” vs “bob@iCloud” ?
I can’t get this to work. I mean, it doesn’t work with incoming emails. If I send an email it’s ok, because it looks like I sent it form the gmail account (even if in reality i’m using the secondary cloud account I configuered ad you instructed), but if somebody send me an email to my gmail account I don’t get any push in the iphone mail app. The only way to get a push is to send the email to the secondary account email address (that is an icloud address, not the desired gmail one).
Make sure you’ve set up the gmail forwarding correctly – gmail should be set to forward all new email to the secondary iCloud account.
People, just slow down and follow the instructions, this guide is spot on , I just did it first time with my iphone 6+ on ios 8 – If its not working then you have missed something! its that simple.
If I can do it first time then you can.
I’ve been looking for a solution like this for over one year. This works and has solved my problem. Thank you very much.
Works fine with me. Exactly what I had been looking for. Thanks a lot.
What about folders created within Gmail for storing emails? I have a lot of folders for different things (bills, work, personal, etc). I’m assuming this method won’t mirror those folders, since it’s through iCloud and not Gmail.
Unfortunately this method didn’t work for me anyway. I couldn’t connect to the stmp.gmail. Either way, the folder issue is a dealbreaker for me, which is too bad.
I appreciate the effort & the article though – looks like it works well for everyone else! I’ll keep searching for a solution to this blasted PUSH issue…
Yeah, the folders won’t sync. That’s one limitation. Sorry you weren’t able to get the setup to work right.
Jon. Good stuff. I’m in iOS 9.1 on a 6s. I can’t get notifications from gmail and not 2nd iCloud account I set up to do this. I went to notifications > mail and they’re off in iCloud account I’m using to forward and on in gmail account but I get no audio, banner nor badge notifications.
Since G-mail should be forwarding to the 2nd iCloud account, you’ll want to get notifications from it, so you’ll want to have notifications > Mail on for the iCloud account, and probably off for Gmail.
Correct. That seems to work now. Thank you! Next question: How do I permanently change “from” email to always be gmail (since I don’t want people to have to update new email and still use gmail for security). It doesn’t work. When I change it and reply or compose a message it still comes from 2nd iCloud account, which is annoying 🙁 Thanks so much!