March 6th, 2026
like2 reactions

Prepare your add-in for Outlook ribbon improvements

We’re 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:

  • Showing the group or control name specified in your manifest for the add-in’s ribbon button (instead of the add-in name from Microsoft Marketplace).
  • Adding a dropdown next to the add-in button for quick access to the add-in’s commands.
  • Adding a similar dropdown in the overflow menu.

outlook ribbon improvements image

Update

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’s button on the ribbon.

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.

If your add-in has multiple add-in commands, the label specified for your add-in’s group is shown. Where the group name is specified depends on the type of manifest your add-in uses.

"extensions": [
  {
    …
    "ribbons": [
      {
        …
        "tabs": [
          {
            …
            "groups": [
              {
                "id": "msgComposeCmdGroup",
                "label": "Contoso Add-in",
                …
              }
            ]
          }
        ]
      }
    ]
  }
]
<ExtensionPoint xsi:type="MessageComposeCommandSurface">
    <OfficeTab id="TabDefault">
        <Group id="msgComposeCmdGroup">
            <Label resid="GroupLabel"/>
            …
        </Group>
    </OfficeTab>
</ExtensionPoint>
…
<Resources>
  …
  <bt:ShortStrings>
    <bt:String id="GroupLabel" DefaultValue="Contoso Add-in"/>
  </bt:ShortStrings>
</Resources>

If your add-in has only one add-in command, the label specified for that command’s control is shown. Where the control name is specified depends on the type of manifest your add-in uses.

  • Unified manifest for Microsoft 365: The control name is specified in the label property of extensions.ribbons.tabs.groups.controls. The following code is an example.
    "extensions": [
      {
        …
        "ribbons": [
          {
            …
            "tabs": [
              {
                …
                "groups": [
                  {
                    …
    		     “controls”: [
                      ...
                      “label”: “Hello world”,
                      ...
                    ],
                    ...
                  }
                ]
              }
            ]
          }
        ]
      }
    ]
    
  • Add-in only manifest: The control name is specified in the child <Label> element of the <Control> element. Its value is defined in the <ShortStrings> section of <Resources>. The following code is an example.
    <Control xsi:type=“Button” id=“msgComposeButton”>
      <Label resid=“msgComposeButtonLabel”>
      ...
    </Control>
    ...
    <Resources>
      …
      <bt:ShortStrings>
        <bt:String id="msgComposeButtonLabel" DefaultValue="Hello world"/>
      </bt:ShortStrings>
    </Resources>
    

To learn more about these ribbon updates, watch the February 2026 recording of the Office Add-ins community call. While the naming scheme has changed since the recording, the other ribbon improvements presented remain accurate.

Author

We build modern Office extensibility using Office.js, AI, and Copilot, enabling developers to create secure, cross‑platform add-ins that run across Office on the web, desktop, and mobile.

0 comments

Discussion is closed.