Multi-Timezone Configuration

The event calendar works with local times by default, but ships with support for changing the timezone. The conversions and correct output relies on either of these three external libraries: luxon, moment-timezone and day.js. For installing and using these libraries check out this guide.

There are two angles regarding timezones:

  • dataTimezone - the calendar expects this format and returns this format. It is 'local' by default if the date-times don't contain any timezone information.

It can be set globally on the calendar using the dataTimezone option, or specifically for the event using the timezone property of the event data.

  • displayTimezone - the calendar displays the events in this timezone. The date-times will be converted from the dataTimezone and displayed accordingly. It is 'local' by default
Enable switching the timezone in the UI?  Learn how to dynamically change timezones →
Download and try example

Demo

Data timezone is

Display timezone is

The local timezone your browser is in:

// Extend Day.js with UTC and timezone plugins
dayjs.extend(window.dayjs_plugin_utc);
dayjs.extend(window.dayjs_plugin_timezone);
// Setup Mobiscroll Day.js plugin
mobiscroll.dayjsTimezone.dayjs = dayjs;

mobiscroll.eventcalendar('#calendar', {
    dataTimezone: 'utc',
    displayTimezone: 'local',
    timezonePlugin: mobiscroll.dayjsTimezone,
    view: { scheduler: { type: 'week' } },
    data: [{
        start: '2026-10-23T07:00:00Z',
        end: '2026-10-23T09:00:00Z',
        title: 'Stakeholder mtg.',
        color: '#d64646'
    }, {
        start: '2026-10-26T18:00:00Z',
        end: '2026-10-26T19:30:00Z',
        title: 'Wrapup mtg.',
        color: '#ecbc72'
    }, {
        start: '2026-10-23T14:00:00Z',
        end: '2026-10-23T18:00:00Z',
        title: 'Business of Software Conference',
        color: '#ff6d42'
    }, {
        start: '2026-10-24T20:00:00Z',
        end: '2026-10-24T21:50:00Z',
        title: 'Product Team mtg.',
        color: '#913aa7'
    }, {
        start: '2026-10-22T13:00:00Z',
        end: '2026-10-22T15:00:00Z',
        title: 'Decision Making mtg.',
        color: '#46c3d6'
    }, {
        start: '2026-10-24T13:00:00Z',
        end: '2026-10-24T14:00:00Z',
        title: 'Quick mtg. with Martin',
        color: '#50b166'
    }, {
        start: '2026-10-26T12:00:00Z',
        end: '2026-10-26T16:00:00Z',
        color: '#5bb7c5',
        title: 'Team-Building'
    }],
});
Set separate data and display timezones in the Scheduler — let users switch visible timezones without changing event data.

Duplicate Session

You have signed in on a different machine. To keep everything in sync, you have been signed out of this session.

If you need to invite team members, manage seats and accounts you can do it from the licenses page.

Duplicate Session

We noticed you are logged in on a different machine and have closed your old session.

If you need to invite team members, manage seats and accounts you can do it from the licenses page.