Skip to content
C MakeCalendarLink

Add to Office 365 calendar link

Microsoft 365 work and school accounts live on a different host than personal Outlook.com accounts. Same parameters, different domain, and a link built for one fails for the other. For a B2B audience this is the variant that matters most.

Rather not build the URL by hand? The generator does all of this, including the encoding.

Generate a link

The URL format

https://outlook.office.com/calendar/0/deeplink/compose
  ?path=/calendar/action/compose
  &rru=addevent
  &subject=Q4+product+webinar
  &startdt=2026-09-10T12:00:00Z
  &enddt=2026-09-10T13:00:00Z
  &body=A+45+minute+session
  &location=Meeting+room+2

Why you cannot detect the account type

Nothing in the browser tells you whether a visitor has a personal or a work Microsoft account. Some tools guess from the email domain, which breaks the moment someone at a company uses a personal account, or the reverse.

The honest answer is to show both and label them clearly. In a B2B newsletter, put the work variant first: that is what most of your readers have.

Tenants that block deeplinks

Some enterprise tenants restrict which external URLs open in Outlook on the web, and the deeplink lands on a policy page. You cannot work around that from the outside, so always keep an .ics download in the list. It goes through the desktop client, which those policies rarely touch.

Add to Office 365 calendar link: questions

Is Office 365 the same as Outlook.com? +
No. Outlook.com is the consumer service on outlook.live.com. Microsoft 365 work and school accounts are on outlook.office.com. Offer both links.
Will this work with Microsoft Teams meetings? +
The event is created in the attendee's own calendar and any Teams link in the location or body stays clickable, but it does not become a real Teams meeting. For that you need the Graph API.

Other calendars