There have been several threads emerging regarding missing profile images in the Office 365 Suite Bar (example thread). The problem seems to centre around the fact that, whilst users add their picture to Office 365, it fails to appear when using services like Yammer or Planner.
Based on the code, my picture is being obtained using the email variable from:
It’s the same in Yammer. In fact it’s using the same chunk of code.
Hmm… I’m “Doughboy” in Planner yet my avatar just below the Suite Bar shows me.
Interestingly the code is obtaining my avatar from a different location to the one used by SharePoint and Yammer:
From watching the page load using Edge Developer tools, it’s my interpretation that Power BI is obtaining my picture from another location:
Finally, I’m “Doughboy” in Office 365 Home. 😦
To me the appearance of “Doughboy” and variable end points is a sign that there is an inconsistency in the Suite Bar wiring.
In some of the threads on the subject, Yammer has unfairly taken the blame for the appearance of “Doughboy”. I believe it is not a Yammer issue and it is all about the wiring behind the scenes. In addition to the examples at the start of my post I’ve seen other mismatches – my current profile image in Office 2016 Apps, with the exception of Outlook, is different to the one in the Office 365 Suite Bar *but* Office 365 ProPlus should be wired up via Azure AD.
I guess to some of you reading this you might be wondering why the fuss in the first place, it’s just a picture after all. My argument is that we all readily identify with our own image. Its appearance shows that this is our instance of SharePoint, or Yammer post. It helps us, probably at a subconscious level, to make a personal connection. It also seems a feature of human nature that little inconsistencies, especially in our appearance, can really make us question what is going on. When we are trying to get people to adopt Office 365 we tell them about the behind the scenes magic that wires content to people, people to content and it is a consistent experience on any device, anytime, anywhere. Variability in the profile picture, and the presentation of the Suite Bar for that matter, undermines the consistency point and leads people to question the wiring.
In producing this post, I conducted some research into how it should work. The Suite Bar *should* be getting your profile picture from the Office 365 Directory Service, which in turn goes out to Exchange Online to get it, as that is where the image is stored when you upload it . Once in Exchange, your image is pushed down to SharePoint for use there . SharePoint can use one of three renditions of the image based on the component that needs it. The examples from the start of my post show that the services then call differing end points which in turn *should* all lead back to the image in Exchange Online.
In the case of Yammer, it gets its profile information from the Office 365 Directory Service but it only takes the User items  e.g. Name. Avatars work in Yammer, whilst perhaps “Doughboy” might be in Suite Bar as:
“If a user’s Yammer profile does not include a picture, the profile will be updated with the user’s Office 365 profile picture. This update is initiated when the user logs in to Yammer and will be reflected in the Yammer profile within few hours. If the user later updates his or her Office 365 profile picture, the Yammer profile picture will also update after the user logs into Yammer.” 
As a side note, I’d definitely raise a support ticket with Microsoft if your Yammer avatars do not have pictures. In this situation, something is blocking the pull down of the Office 365 profile picture. It could be something as simple as deleting profile images in Yammer, waiting a few hours and it should push them back down but best if Microsoft look into it for you.
In my opinion the current architecture does not make sense as your profile image should sit outside Exchange Online or SharePoint Online i.e. treated like the other core Active Directory properties and independent of the service that consumes it. I understand that changes would need to occur if Active Directory where to be used as there is anecdotal evidence of a 100kB file limit. Great for avatars rubbish for Delve, Skype etc. where high definition images are required. Hence SharePoint has a 5MB limit and another end point for those images. Having a single endpoint would help developers and companies who do not want to lead with Exchange Online first etc.
I hope Microsoft can review and revise the wiring.
 The image is stored in Exchange – https://support.office.com/en-us/article/Add-your-user-photo-to-Office-365-2eaf93fd-b3f1-43b9-9cdc-bdcd548435b7 – It can be manipulated by the Set-UserPhoto (which is an Exchange commandlet). It is also why (regrettably) people still need to lead with Exchange Online, or at least license users for it, if they want the most cohesive onboarding experience into the other workloads. Without an Exchange Online license, there is no Exchange account to hold the profile picture. This can be worked around for SharePoint by uploading images directly into its User Profile Service.[back to article]
 I’m not aware that the actual sync interval is published by Microsoft but authors of articles like this one https://spbreed.wordpress.com/2015/11/06/demystifying-user-profile-picture-sync-in-office365/ go into the details of the inner workings. In SharePoint, images can be stored in – https://msdn.microsoft.com/en-us/library/office/microsoft.sharepoint.client.userprofiles.peoplemanager.setmyprofilepicture.aspx [back to article]
 This article has a useful table with the attributes passed through to the various services in Office 365. For Yammer (see the Third Party section) https://docs.microsoft.com/en-gb/azure/active-directory/connect/active-directory-aadconnectsync-attributes-synchronized [back to article]
 Taken from the FAQ in this article https://support.office.com/en-us/article/Manage-Yammer-users-across-their-life-cycle-from-Office-365-6c4c8fff-6444-404a-bffc-f9da0bcc3039 [back to article]