After the note about the launch of shared mailbox and dark mode support for Outlook mobile appeared, several people commented that they had the latest client but couldn’t access the shared mailbox feature. This prompted me to have a conversation with Microsoft to find out how they deploy new features to what is now a very large (100+ million as of May 2019) installed base.
Outlook Mobile has both consumer and commercial (Office 365) users. Some features, like dark mode, are available to both sets while others, like shared mailboxes, are only available to commercial customers. The deployment mechanism needs to take account of these factors.
Random Selection During Roll-Out
When Microsoft releases a new Outlook mobile feature, they select a random percentage of the worldwide installed base as the initial roll-out target. For features like dark mode intended for use by any Outlook mobile user, the random selection is formed of individual commercial and consumer users. Commercial-targeted features like shared mailboxes begin deployment to a random selection of Office 365 tenants. If the selection is user-based, selected users can access the new feature immediately while others in the same tenant must wait until the roll-out reaches them. If the select is tenant-based, everyone in the selected tenants can access the new feature once the tenant is enabled.
Eventually the roll-out reaches 100% and everyone who has the latest version of the Outlook mobile app (iOS or Android) can access the new feature. The exact timing from start to finish of a roll-out varies across features and depends on factors such as bug reports or problems detected in the telemetry Microsoft gathers from Outlook clients.
No Control for Office 365 Tenants
Office 365 tenant administrators can’t influence the selection of their tenant or users within their tenant to receive new Outlook mobile features early. There’s no equivalent of the Targeted Release capability that exists for Office 365 features. There’s also no way for a tenant administrator to know who in the tenant might have been randomly selected to receive early access to a new feature. One way of looking at this is to say that random selection is fair to everyone; another is to say that Microsoft should give tenants some control over how new client technology is deployed to their users. On balance, it seems to me that Microsoft should provide some way to control deployment of commercial features, perhaps as a setting available through the Office 365 Admin Center.
There’s also no way to disable one or more Outlook Mobile features on a selective user-by-user basis. This might be useful for commercial features where some tenants don’t want people to use certain capabilities (like shared mailboxes) on mobile devices.
Testflight Makes a Difference
Those who sign up for the Outlook Insiders program and use the Testflight version of Outlook for iOS are not restricted by the random selection process and can use new features as Microsoft deploys them to Testflight. This can lead to an interesting situation where a tenant account can access a new feature through Testflight while another account in the same tenant can’t when using the production version of Outlook for iOS.
Need to know more about Outlook Mobile and other Office 365 clients? The Office 365 for IT Pros eBook covers this topic in some detail!
In the case of Outlook ‘dark mode’, it appears that client device platform type is a also a factor in the rollout ‘targeting’ exercise – we’ve endusers in our org with iOS who have succeeded to make the Outlook ‘dark mode’ work, and none on Android yet, despite the efforts.
This overall experience makes one to comment like this – Apple have demonstrated for years that a certain degree of mystery and mistique in the rollout schedules helps to attract and to retain followers. Microsoft with their O365 feature rollouts are overdoing that trick however, be it deliberate or accidental.
Thanks for the insight on how this works. I still don’t have the option for a shared mailbox or dark mode in our tenant. This is one of my few frustrations with Office 365 in general. We should be able to know exactly when new features hit our tenant. I spend alot of time randomly checking for new features. Also checking blogs, roadmaps, this website, etc. It should be easier.
{"id":null,"mode":"button","open_style":"in_modal","currency_code":"EUR","currency_symbol":"\u20ac","currency_type":"decimal","blank_flag_url":"https:\/\/office365itpros.com\/wp-content\/plugins\/tip-jar-wp\/\/assets\/images\/flags\/blank.gif","flag_sprite_url":"https:\/\/office365itpros.com\/wp-content\/plugins\/tip-jar-wp\/\/assets\/images\/flags\/flags.png","default_amount":100,"top_media_type":"featured_image","featured_image_url":"https:\/\/office365itpros.com\/wp-content\/uploads\/2022\/11\/cover-141x200.jpg","featured_embed":"","header_media":null,"file_download_attachment_data":null,"recurring_options_enabled":true,"recurring_options":{"never":{"selected":true,"after_output":"One time only"},"weekly":{"selected":false,"after_output":"Every week"},"monthly":{"selected":false,"after_output":"Every month"},"yearly":{"selected":false,"after_output":"Every year"}},"strings":{"current_user_email":"","current_user_name":"","link_text":"Virtual Tip Jar","complete_payment_button_error_text":"Check info and try again","payment_verb":"Pay","payment_request_label":"Office 365 for IT Pros","form_has_an_error":"Please check and fix the errors above","general_server_error":"Something isn't working right at the moment. Please try again.","form_title":"Office 365 for IT Pros","form_subtitle":null,"currency_search_text":"Country or Currency here","other_payment_option":"Other payment option","manage_payments_button_text":"Manage your payments","thank_you_message":"Thank you for supporting the work of Office 365 for IT Pros!","payment_confirmation_title":"Office 365 for IT Pros","receipt_title":"Your Receipt","print_receipt":"Print Receipt","email_receipt":"Email Receipt","email_receipt_sending":"Sending receipt...","email_receipt_success":"Email receipt successfully sent","email_receipt_failed":"Email receipt failed to send. Please try again.","receipt_payee":"Paid to","receipt_statement_descriptor":"This will show up on your statement as","receipt_date":"Date","receipt_transaction_id":"Transaction ID","receipt_transaction_amount":"Amount","refund_payer":"Refund from","login":"Log in to manage your payments","manage_payments":"Manage Payments","transactions_title":"Your Transactions","transaction_title":"Transaction Receipt","transaction_period":"Plan Period","arrangements_title":"Your Plans","arrangement_title":"Manage Plan","arrangement_details":"Plan Details","arrangement_id_title":"Plan ID","arrangement_payment_method_title":"Payment Method","arrangement_amount_title":"Plan Amount","arrangement_renewal_title":"Next renewal date","arrangement_action_cancel":"Cancel Plan","arrangement_action_cant_cancel":"Cancelling is currently not available.","arrangement_action_cancel_double":"Are you sure you'd like to cancel?","arrangement_cancelling":"Cancelling Plan...","arrangement_cancelled":"Plan Cancelled","arrangement_failed_to_cancel":"Failed to cancel plan","back_to_plans":"\u2190 Back to Plans","update_payment_method_verb":"Update","sca_auth_description":"Your have a pending renewal payment which requires authorization.","sca_auth_verb":"Authorize renewal payment","sca_authing_verb":"Authorizing payment","sca_authed_verb":"Payment successfully authorized!","sca_auth_failed":"Unable to authorize! Please try again.","login_button_text":"Log in","login_form_has_an_error":"Please check and fix the errors above","uppercase_search":"Search","lowercase_search":"search","uppercase_page":"Page","lowercase_page":"page","uppercase_items":"Items","lowercase_items":"items","uppercase_per":"Per","lowercase_per":"per","uppercase_of":"Of","lowercase_of":"of","back":"Back to plans","zip_code_placeholder":"Zip\/Postal Code","download_file_button_text":"Download File","input_field_instructions":{"tip_amount":{"placeholder_text":"How much would you like to tip?","initial":{"instruction_type":"normal","instruction_message":"How much would you like to tip? Choose any currency."},"empty":{"instruction_type":"error","instruction_message":"How much would you like to tip? Choose any currency."},"invalid_curency":{"instruction_type":"error","instruction_message":"Please choose a valid currency."}},"recurring":{"placeholder_text":"Recurring","initial":{"instruction_type":"normal","instruction_message":"How often would you like to give this?"},"success":{"instruction_type":"success","instruction_message":"How often would you like to give this?"},"empty":{"instruction_type":"error","instruction_message":"How often would you like to give this?"}},"name":{"placeholder_text":"Name on Credit Card","initial":{"instruction_type":"normal","instruction_message":"Enter the name on your card."},"success":{"instruction_type":"success","instruction_message":"Enter the name on your card."},"empty":{"instruction_type":"error","instruction_message":"Please enter the name on your card."}},"privacy_policy":{"terms_title":"Terms and conditions","terms_body":null,"terms_show_text":"View Terms","terms_hide_text":"Hide Terms","initial":{"instruction_type":"normal","instruction_message":"I agree to the terms."},"unchecked":{"instruction_type":"error","instruction_message":"Please agree to the terms."},"checked":{"instruction_type":"success","instruction_message":"I agree to the terms."}},"email":{"placeholder_text":"Your email address","initial":{"instruction_type":"normal","instruction_message":"Enter your email address"},"success":{"instruction_type":"success","instruction_message":"Enter your email address"},"blank":{"instruction_type":"error","instruction_message":"Enter your email address"},"not_an_email_address":{"instruction_type":"error","instruction_message":"Make sure you have entered a valid email address"}},"note_with_tip":{"placeholder_text":"Your note here...","initial":{"instruction_type":"normal","instruction_message":"Attach a note to your tip (optional)"},"empty":{"instruction_type":"normal","instruction_message":"Attach a note to your tip (optional)"},"not_empty_initial":{"instruction_type":"normal","instruction_message":"Attach a note to your tip (optional)"},"saving":{"instruction_type":"normal","instruction_message":"Saving note..."},"success":{"instruction_type":"success","instruction_message":"Note successfully saved!"},"error":{"instruction_type":"error","instruction_message":"Unable to save note note at this time. Please try again."}},"email_for_login_code":{"placeholder_text":"Your email address","initial":{"instruction_type":"normal","instruction_message":"Enter your email to log in."},"success":{"instruction_type":"success","instruction_message":"Enter your email to log in."},"blank":{"instruction_type":"error","instruction_message":"Enter your email to log in."},"empty":{"instruction_type":"error","instruction_message":"Enter your email to log in."}},"login_code":{"initial":{"instruction_type":"normal","instruction_message":"Check your email and enter the login code."},"success":{"instruction_type":"success","instruction_message":"Check your email and enter the login code."},"blank":{"instruction_type":"error","instruction_message":"Check your email and enter the login code."},"empty":{"instruction_type":"error","instruction_message":"Check your email and enter the login code."}},"stripe_all_in_one":{"initial":{"instruction_type":"normal","instruction_message":"Enter your credit card details here."},"empty":{"instruction_type":"error","instruction_message":"Enter your credit card details here."},"success":{"instruction_type":"normal","instruction_message":"Enter your credit card details here."},"invalid_number":{"instruction_type":"error","instruction_message":"The card number is not a valid credit card number."},"invalid_expiry_month":{"instruction_type":"error","instruction_message":"The card's expiration month is invalid."},"invalid_expiry_year":{"instruction_type":"error","instruction_message":"The card's expiration year is invalid."},"invalid_cvc":{"instruction_type":"error","instruction_message":"The card's security code is invalid."},"incorrect_number":{"instruction_type":"error","instruction_message":"The card number is incorrect."},"incomplete_number":{"instruction_type":"error","instruction_message":"The card number is incomplete."},"incomplete_cvc":{"instruction_type":"error","instruction_message":"The card's security code is incomplete."},"incomplete_expiry":{"instruction_type":"error","instruction_message":"The card's expiration date is incomplete."},"incomplete_zip":{"instruction_type":"error","instruction_message":"The card's zip code is incomplete."},"expired_card":{"instruction_type":"error","instruction_message":"The card has expired."},"incorrect_cvc":{"instruction_type":"error","instruction_message":"The card's security code is incorrect."},"incorrect_zip":{"instruction_type":"error","instruction_message":"The card's zip code failed validation."},"invalid_expiry_year_past":{"instruction_type":"error","instruction_message":"The card's expiration year is in the past"},"card_declined":{"instruction_type":"error","instruction_message":"The card was declined."},"missing":{"instruction_type":"error","instruction_message":"There is no card on a customer that is being charged."},"processing_error":{"instruction_type":"error","instruction_message":"An error occurred while processing the card."},"invalid_request_error":{"instruction_type":"error","instruction_message":"Unable to process this payment, please try again or use alternative method."},"invalid_sofort_country":{"instruction_type":"error","instruction_message":"The billing country is not accepted by SOFORT. Please try another country."}}}},"fetched_oembed_html":false}
In the case of Outlook ‘dark mode’, it appears that client device platform type is a also a factor in the rollout ‘targeting’ exercise – we’ve endusers in our org with iOS who have succeeded to make the Outlook ‘dark mode’ work, and none on Android yet, despite the efforts.
This overall experience makes one to comment like this – Apple have demonstrated for years that a certain degree of mystery and mistique in the rollout schedules helps to attract and to retain followers. Microsoft with their O365 feature rollouts are overdoing that trick however, be it deliberate or accidental.
Thanks for the insight on how this works. I still don’t have the option for a shared mailbox or dark mode in our tenant. This is one of my few frustrations with Office 365 in general. We should be able to know exactly when new features hit our tenant. I spend alot of time randomly checking for new features. Also checking blogs, roadmaps, this website, etc. It should be easier.
I have dark mode… but no shared mailbox…i had it in june /july, Removed for a test/doc and it never appeared again…
I can’t tell you why shared mailboxes have disappeared. It’s a Microsoft mystery…
you could log a support call with Microsoft….