How to sync Salesforce and Office 365 calendars (2024 version)?


We're currently looking for partners and distributors in different regions. If you're interested, please feel free to contact us.

Salesforce Calendar Meetings Office 365 Calendar Meetings

If you are reading this article, most probably you are looking for a ways to be able to combine meetings of two or more calendars to give you the full visibility and simplify your day-to-day scheduling activities. Let's discuss what are the possible solutions to this problem for Salesforce and Office 365 calendars, and how SyncPenguin can help you.

Sharing vs Syncing

Most of the scheduling and digital calendar services allow users to share their calendar with other users or third-party applications. This gives you the ability to see meetings (and in some cases even edit them), but there are certain drawbacks to this method. Let's compare calendar sharing and syncing.


If you share your calendar with another account, the result of this is that you now see two separate calendars that don't interact with each other in any way. Your primary calendar remains the same, and if someone wants to schedule a meeting with you, they won't see your booked slots from the shared calendar. While this is a good way for you to be able to see your combined schedule, it does not help in any way when interacting with others.

Syncing (merging) calendars

Syncing (also called merging) two calendars is a way of combining information from both calendars into each other, after which you have full visibility of your schedule in both. If another person in your organization decides to invite you to a meeting, they will see your combined schedule and full availability across both of your calendars, which reduces the chance of you getting double-booked. This is the most reliable and robust way of maintaining two or more calendars while avoiding unnecessary headache.

How to sync calendars?

SyncPenguin can help you keep meetings of Salesforce and Office 365 calendars in sync or merged. We ensure that all of your appointments and bookings are in sync between the calendars, your colleagues can see your full availability and schedule, and you never again get double-booked because of missing information.

With SyncPenguin you can:

  • Sync existing and future meetings, including recurring.
  • Merge two calendars.
  • Keep meetings synced in real-time.
  • Add filters or custom rules to the sync.
  • Adjust field mapping between the meetings.

This guide explains in detail how to create, configure and start such a sync.

If you'd like to start syncing right away, feel free to create an account and set up the sync on your own. Go back to the guide in case of any ambiguity or questions. You can also contact us for any questions, requests, or feedback.

Step 1. Create a SyncPenguin account

The first step is to create a SyncPenguin account. We offer a free 14-day trial (without a credit card) to make sure everything works well before your commitment. Please follow the link below to create an account.

14-day free trial β€’ no credit card β€’ quick setup

Step 2. Create the sync

The next step is to create a sync in the Synchronizations section of the dashboard by clicking the + New sync button. You'll see a wizard page, where you have to do the following three steps:

  • Choose Salesforce Calendar Meetings for the first app.
  • Then choose Office 365 Calendar Meetings for the second app.
  • Then select syncing direction.
  • Then click the Create button.

Step 3. Provide access to Salesforce and Office 365 calendars

Now that your sync is created, the next important step is to grant SyncPenguin access to your calendar meeting data. You'll see two Account sections for both apps involved in the sync. Below we explain how to connect and configure accounts.

How to connect Salesforce?

The Salesforce Calendar Meetings account connection section will look like this:

Account for Salesforce Calendar Meetings
Salesforce Calendar Meetings

How to connect Office 365?

The Office 365 Calendar Meetings account connection section will look like this:

Account for Office 365 Calendar Meetings
Office 365 Calendar Meetings
User group
Additional settings
User group
Additional settings

Please make sure both apps are properly connected before starting the sync.


If you're concerned about the security of your private data, please check out the Security Practices page.

Step 4. Sync settings

In the Sync settings section you have the ability to adjust some of the default properties of your integration flow:

  • The name of your sync.
  • Sync direction (two-way or one-way).
  • Sync interval (by default the sync is triggered every 10 minutes).

Additionally, in Field mappings & rules you can customize the way data is mapped between the calendar apps, or add some filters or custom rules to the sync behavior. This is done using our simple no-code visual interface, which allows you to do both simple adjustments as well as implement complex custom scenarios.

You can learn more about our customization interface here.

Note that each sync has a Default mapping which includes all of the commons fields we know about between Salesforce and Office 365 calendar meetings. Additionally, we provide Only busy status mappings (both two-way and one-way) that will exclude any meeting information from being synced. This is useful in scenarios when you just need to sync your availability information and free/busy status to an external calendar without actually syncing any meeting details.

Sync settings

Step 5. Start syncing

The last step is to start the sync. To do that, click the Start syncing button.

You'll then be prompted with the following options:

  1. Only sync new data, meaning anything that will be added or updated starting from now.
  2. Merge all historic data two-way: take all meetings (from not more than a month ago by default) and merge them two-way. Any meetings that already exist on both calendars should be merged instead of creating duplicates.
  3. Merge all meetings in one direction only.
  4. Merge all meetings in the opposite direction.
Start sync
We'll be checking every 10 minutes for changes in your data.
What should we do initially with already existing meetings?

Once you make your choice, just click Start syncing. In case you decide to do the initial merge, it'll be instantly queued. Once it's done, we'll be checking for data changes every now and then (depending on the sync interval specified) and syncing accordingly. Each sync execution can be seen in the Sync history at the bottom of the sync page.

Learn more