{"id":25368,"date":"2026-03-06T13:43:22","date_gmt":"2026-03-06T21:43:22","guid":{"rendered":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/?p=25368"},"modified":"2026-05-19T21:05:10","modified_gmt":"2026-05-20T04:05:10","slug":"prepare-your-addin-for-outlook-ribbon-improvements","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/prepare-your-addin-for-outlook-ribbon-improvements\/","title":{"rendered":"Prepare your add-in for Outlook ribbon improvements"},"content":{"rendered":"<p>We\u2019re improving how add-ins appear on the ribbon in Outlook on the web and the new Outlook on Windows. These Outlook ribbon updates make add-ins easier to find and align the experience across Outlook clients. Improvements include:<\/p>\n<ul>\n<li>Showing the group or control name specified in your manifest for the add-in\u2019s ribbon button (instead of the add-in name from Microsoft Marketplace).<\/li>\n<li>Adding a dropdown next to the add-in button for quick access to the add-in\u2019s commands.<\/li>\n<li>Adding a similar dropdown in the overflow menu.<\/li>\n<\/ul>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2026\/03\/outlook-ribbon-improvements.webp\"><img decoding=\"async\" class=\"size-full wp-image-25402 alignnone\" src=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2026\/03\/outlook-ribbon-improvements.webp\" alt=\"outlook ribbon improvements image\" width=\"365\" height=\"120\" srcset=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2026\/03\/outlook-ribbon-improvements.webp 365w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2026\/03\/outlook-ribbon-improvements-300x99.webp 300w\" sizes=\"(max-width: 365px) 100vw, 365px\" \/><\/a><\/p>\n<p><div class=\"alert alert-primary\"><p class=\"alert-divider\"><i class=\"fabric-icon fabric-icon--Info\"><\/i><strong>Update<\/strong><\/p>This blog post has been updated since its original publication on March 6, 2026. The updates reflect changes to the name that is used for an add-in&#8217;s button on the ribbon.<\/div><\/p>\n<p>To make sure your add-in shows the intended name when these updates take effect, review your manifest and update the group and control labels if needed. The type of label shown on the ribbon varies depending on whether your add-in has multiple add-in commands.<\/p>\n<p>If your add-in has multiple add-in commands, the label specified for your add-in&#8217;s group is shown. Where the group name is specified depends on the type of manifest your add-in uses.<\/p>\n<ul>\n<li><strong><a href=\"https:\/\/learn.microsoft.com\/office\/dev\/add-ins\/develop\/unified-manifest-overview\"><b>Unified manifest for Microsoft 365<b><\/b><\/b><\/a><\/strong>: The group name is specified in the <strong><a href=\"https:\/\/learn.microsoft.com\/microsoft-365\/extensibility\/schema\/extension-ribbons-custom-tab-groups-item#label\">label<\/a><\/strong> property of the relevant group in <a href=\"https:\/\/learn.microsoft.com\/microsoft-365\/extensibility\/schema\/extension-ribbons-array-tabs-item#groups\">extensions.ribbons.tabs.groups<\/a>. The following code is an example.<\/li>\n<\/ul>\n<pre class=\"prettyprint language-js\" style=\"padding-left: 40px;\"><code class=\"language-js\">\"extensions\": [\r\n  {\r\n    \u2026\r\n    \"ribbons\": [\r\n      {\r\n        \u2026\r\n        \"tabs\": [\r\n          {\r\n            \u2026\r\n            \"groups\": [\r\n              {\r\n                \"id\": \"msgComposeCmdGroup\",\r\n                \"label\": \"Contoso Add-in\",\r\n                \u2026\r\n              }\r\n            ]\r\n          }\r\n        ]\r\n      }\r\n    ]\r\n  }\r\n]\r\n<\/code><\/pre>\n<ul>\n<li><a href=\"https:\/\/learn.microsoft.com\/office\/dev\/add-ins\/develop\/xml-manifest-overview\"><strong><b>Add-in only manifest<\/b><\/strong><\/a>: The group name is specified in the relevant group\u2019s child <a href=\"https:\/\/learn.microsoft.com\/javascript\/api\/manifest\/group#label\">&lt;Label&gt;<\/a> Its value is defined in the <a href=\"https:\/\/learn.microsoft.com\/javascript\/api\/manifest\/shortstrings\">&lt;ShortStrings&gt;<\/a> section of <a href=\"https:\/\/learn.microsoft.com\/javascript\/api\/manifest\/resources\">&lt;Resources&gt;<\/a>. The following code is an example.<\/li>\n<\/ul>\n<pre class=\"prettyprint language-js\" style=\"padding-left: 40px;\"><code class=\"language-js\">&lt;ExtensionPoint xsi:type=\"MessageComposeCommandSurface\"&gt;\r\n    &lt;OfficeTab id=\"TabDefault\"&gt;\r\n        &lt;Group id=\"msgComposeCmdGroup\"&gt;\r\n            &lt;Label resid=\"GroupLabel\"\/&gt;\r\n            \u2026\r\n        &lt;\/Group&gt;\r\n    &lt;\/OfficeTab&gt;\r\n&lt;\/ExtensionPoint&gt;\r\n\u2026\r\n&lt;Resources&gt;\r\n  \u2026\r\n  &lt;bt:ShortStrings&gt;\r\n    &lt;bt:String id=\"GroupLabel\" DefaultValue=\"Contoso Add-in\"\/&gt;\r\n  &lt;\/bt:ShortStrings&gt;\r\n&lt;\/Resources&gt;\r\n<\/code><\/pre>\n<p>If your add-in has only one add-in command, the label specified for that command\u2019s control is shown. Where the control name is specified depends on the type of manifest your add-in uses.<\/p>\n<ul>\n<li><strong>Unified manifest for Microsoft 365<\/strong>: The control name is specified in the label property of <a href=\"https:\/\/learn.microsoft.com\/microsoft-365\/extensibility\/schema\/extension-common-custom-group-controls-item?view=m365-app-1.27&amp;tabs=syntax\">extensions.ribbons.tabs.groups.controls<\/a>. The following code is an example.\n<pre class=\"prettyprint language-default\"><code class=\"language-default\">\"extensions\": [\r\n  {\r\n    \u2026\r\n    \"ribbons\": [\r\n      {\r\n        \u2026\r\n        \"tabs\": [\r\n          {\r\n            \u2026\r\n            \"groups\": [\r\n              {\r\n                \u2026\r\n\t\t     \u201ccontrols\u201d: [\r\n                  ...\r\n                  \u201clabel\u201d: \u201cHello world\u201d,\r\n                  ...\r\n                ],\r\n                ...\r\n              }\r\n            ]\r\n          }\r\n        ]\r\n      }\r\n    ]\r\n  }\r\n]\r\n<\/code><\/pre>\n<\/li>\n<li><strong>Add-in only manifest<\/strong>: The control name is specified in the child <a href=\"https:\/\/learn.microsoft.com\/javascript\/api\/manifest\/group#label\">&lt;Label&gt;<\/a> element of the <a href=\"https:\/\/learn.microsoft.com\/javascript\/api\/manifest\/control?view=word-js-preview\">&lt;Control&gt;<\/a> element. Its value is defined in the <a href=\"https:\/\/learn.microsoft.com\/javascript\/api\/manifest\/shortstrings\">&lt;ShortStrings&gt;<\/a> section of <a href=\"https:\/\/learn.microsoft.com\/javascript\/api\/manifest\/resources\">&lt;Resources&gt;<\/a>. The following code is an example.\n<pre class=\"prettyprint language-default\"><code class=\"language-default\">&lt;Control xsi:type=\u201cButton\u201d id=\u201cmsgComposeButton\u201d&gt;\r\n  &lt;Label resid=\u201cmsgComposeButtonLabel\u201d&gt;\r\n  ...\r\n&lt;\/Control&gt;\r\n...\r\n&lt;Resources&gt;\r\n  \u2026\r\n  &lt;bt:ShortStrings&gt;\r\n    &lt;bt:String id=\"msgComposeButtonLabel\" DefaultValue=\"Hello world\"\/&gt;\r\n  &lt;\/bt:ShortStrings&gt;\r\n&lt;\/Resources&gt;\r\n<\/code><\/pre>\n<\/li>\n<\/ul>\n<p>To learn more about these ribbon updates, watch the <a href=\"https:\/\/youtu.be\/ER0ECLlMye0?si=0dOJ4d06CpqAPF97\">February 2026 recording of the Office Add-ins community call<\/a>. While the naming scheme has changed since the recording, the other ribbon improvements presented remain accurate.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>We\u2019re improving how add-ins appear on the ribbon in Outlook on the web and the new Outlook on Windows. These updates make add-ins easier to find and align the experience across Outlook clients.<\/p>\n","protected":false},"author":69076,"featured_media":25369,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1,11],"tags":[137,370,168,298,422],"class_list":["post-25368","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-microsoft-365-developer","category-office-add-ins","tag-javascript","tag-new-outlook-on-windows","tag-office-javascript-api","tag-outlook-add-ins","tag-outlook-on-the-web"],"acf":[],"blog_post_summary":"<p>We\u2019re improving how add-ins appear on the ribbon in Outlook on the web and the new Outlook on Windows. These updates make add-ins easier to find and align the experience across Outlook clients.<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/posts\/25368","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/users\/69076"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/comments?post=25368"}],"version-history":[{"count":2,"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/posts\/25368\/revisions"}],"predecessor-version":[{"id":25704,"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/posts\/25368\/revisions\/25704"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/media\/25369"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/media?parent=25368"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/categories?post=25368"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/tags?post=25368"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}