Modern Events Calendar is the best WordPress Event Calendar plugin. Here are the features that makes MEC the most powerful and user-friendly WordPress event plugin in the market.
A full-featured booking system with customizable forms, multiple ticket types, and WooCommerce integration.
Create custom booking forms per event. Add, remove, and rearrange fields such as file uploads and dates.
Schedule events to repeat daily, weekly, monthly, yearly, or on custom dates with advanced rules.
Choose from daily, weekly, weekend, weekday, custom day, or advanced repeat rules like "last Thursday of each month."
Let users submit events from the front-end without accessing the dashboard. Enable or disable fields as needed.
Create unlimited shortcodes in various calendar styles and place them anywhere on your site.
Modern Events Calendar shortcodes which are fully compatible with your Page Builders including Elementor, Divi Builder, WP Bakery Page Builder, King Composer, Gutenberg.
Add tickets to cart then pay for the whole WooCommerce cart in one go. You can also sell other items with your events. No more limits.
Book multiple events in a single checkout, no WooCommerce needed. A seamless, independent cart experience.
Accept payments via PayPal Business and PayPal Credit through MEC's advanced booking system.
Multi-vendor payouts: each organizer gets their share while the site owner earns commission.
Organizers enter their payment info; commission goes to site owner, rest to the organizer after each sale.
Full REST API with ~25 endpoints for events, bookings, tickets, and taxonomies. Token & user-token authentication. Built for headless, mobile apps, and agencies.
Trigger custom workflows on booking confirmed, verified, canceled, refunded, and more. Connect MEC to any CRM, Slack, or custom backend.
Two-way sync between MEC and Google Calendar with automated updates and deletions at your chosen frequency.
Assign multiple locations to a single event and display them using dedicated widgets on the event page.
Assign multiple organizers per event with links, descriptions, and support for front-end submission.
You can set a speaker for your hourly scheduled event and also show the speakers using widgets.
Create percentage or fixed discount codes with usage limits, expiry dates, per-event targeting, and min/max ticket rules.
Add fixed or percentage taxes and fees per event. Inclusive or exclusive modes. Full control over pricing.
Let attendees pay a deposit now and the rest later. Configurable per event with full control.
Add paid or free add-ons to your tickets, such as meals, accessories, or merchandise upsells.
Set different prices for your tickets on different dates. Perfect for date-based pricing strategies.
Set start and end availability dates for each ticket type. Control exactly when tickets go on sale.
Let users purchase tickets for multiple selected dates of a repeating event in one booking.
Sell all occurrences of a recurring event in a single booking. Perfect for courses and series.
Edit each occurrence of a repeating event individually. Select the one you want and update its info.
Let attendees book multiple seats under one ticket. Perfect for families and groups.
Slot-based booking for consultations and services. Fully separate from standard event bookings.
Ability to select occurrence on the calendar and for booking in the booking widget instead of dropdown.
Help attendees find events near them using geolocation. Works with map views and location filters.
Display your events on an interactive map above grid and list views with geolocation support.
One-click import from The Events Calendar, EventON, Events Manager, Event Espresso, Calendarize It, WP Event Manager, Bookly, Amelia, and more.
Easily transfer your events from Meetup to MEC, by only a single click.
Importing Facebook events only by one click in the importer of Modern Events Calendar.
One-click import from The Events Calendar, EventON, Calendarize It, and Events Schedule.
Import and export all the settings of your installed MEC plugin from one site to another.
Automatically sync every booking to Mailchimp, ActiveCampaign, Constant Contact, MailerLite, AWeber, MailPoet, or Campaign Monitor. Auto-segment by event.
Send customizable email notifications for booking confirmation, verification, cancellation, and more.
Send booking confirmations and reminders via Twilio SMS. Perfect for last-mile event communication.
Schedule custom automated emails before or after the event. Nurture attendees, send follow-ups, or deliver materials automatically.
Scan the QR code on a buyer's ticket to instantly verify their booking and access ticket details.
Generate dynamic PDF certificates for attendees with custom shortcodes. Bulk-send via email with secure access keys.
Users can check the status of their purchased tickets and download invoices anytime from their profile.
Auto-enroll users in a LearnDash course when they book an event. Event + learning in one flow.
Restrict event viewing, booking, or ticket purchasing by membership level. Members-only events made easy.
Syncs Advanced Custom Fields with WooCommerce to extend event data effortlessly.
Share events to Facebook, X, LinkedIn, Pinterest, VK, Telegram, WhatsApp, Reddit, Pocket, Flipboard, and Tumblr.
Guided onboarding: pick a skin, import demo data, create your first event. Up and running in 5 minutes.
Get the latest MEC updates automatically as soon as they are released, with no manual steps.
Choose from 25 pre-built color skins or add custom CSS to match your brand perfectly.
Assign a custom color to each event to make it stand out in calendars and be easily recognizable.
Integrates Google Fonts with dynamic CSS compilation for complete typography customization.
A beautiful dark mode for all event views that's easy on the eyes and looks modern.
Edit your events directly in the Gutenberg editor with full compatibility and all options enabled.
Assign a custom shortcode skin to your event category and archive pages for a consistent look.
Display 5, 6, or 7 days per week in the timetable shortcode with color-coded events.
A versatile widget that displays your events anywhere your theme supports widgets.
Adds breadcrumb navigation with links to the homepage and event archive for a better user experience.
Filter events by tags, categories, locations, organizers, and speakers across all shortcodes.
Supported in Ajax and normal forms. Paste the shortcode on any page to add a search form.
Make the event sidebar sticky so attendees always see key info while scrolling through long content.
Replace the default event sidebar, add or remove items, and include your own custom widgets.
Displays event time based on the visitor's local timezone with three display style options.
Set a per-event timezone and choose the countdown method for accurate event timing worldwide.
Use featured images for events, locations, organizers, and label badges to enhance visual appeal.
Set a countdown for each event that works with the recurrence system to show the next deadline.
Shows a weather forecast for the event date and location so attendees can plan accordingly.
Event Schema markup to a single page and shortcodes, recommended for SEO.
Visual booking reports with Chart.js. Track revenue, ticket sales, and attendee data with date ranges.
View a summary of events, shortcodes, locations, and organizers all in one reporting dashboard.
Set exclusive shortcode to show the current users' events on one page (useful for the FES system).
Provides an exclusive RSS feed for your events so subscribers never miss an update.
Shows the user whether their submitted event is pending, published, or rejected directly in the list.
Fully compatible with WordPress Multisite networks. Manage events across your entire network.
Works seamlessly with popular caching plugins like W3 Total Cache for optimal performance.
Compatible with major SEO plugins to help your events rank higher in search results.
Fully translatable with RTL support. Every label and message can be customized to your language.
Clean, developer-friendly code built by Webnus experts. Easy to extend and customize for any project.
Set recurrence rules that repeat indefinitely or end on a specific date with full automation.
Explore the features and benefits of MEC Pro over the Free version.
| Create Events, Shortcodes, and Categories | |||
|---|---|---|---|
| Single Day Events | |||
| Multiple Day Events | |||
| All-day Events | |||
| Create All-day Events | |||
| Event Featured Image | |||
| Custom Event Image | |||
| Event Color | |||
| Multiple Event Colors | |||
| Event Link | |||
| Event Custom Link | |||
| Event Status in Submission Form | |||
| Event Label | |||
| Featured or Cancelled Labels | |||
| Insert Images for Locations and Organizers | |||
| Unlimited Categories | |||
| Tag Events | |||
| Shortcode Creator | |||
| Advanced Shortcode Filters | |||
| Shortcode Preview | |||
| Shortcode Generator for Page Builders | |||
| Add Event Wizard | |||
| Add Shortcode Wizard | |||
| Disable Google Fonts | |||
| Disable Booking Feature | |||
| Featured Image Placeholder | |||
| Recurring Events | |||
| Daily Recurring Events | |||
| Weekly Recurring Events | |||
| Monthly Recurring Events | |||
| Yearly Recurring Events | |||
| Multiple Occurrences in One Day | |||
| Repeat on Weekdays and Weekends | |||
| Repeat on Custom Days | |||
| Custom Repeat Intervals | |||
| Never-ending Events | |||
| Set End Date for Event | |||
| Set Maximum Repeat Count | |||
| Show Only One Occurrence | |||
| Advanced Recurring (Custom Days / Intervals) | |||
| Edit Per Occurrences | |||
| Advanced Hourly Schedule | |||
| Hourly Schedule | |||
| Midnight Hour | |||
| Exceptional Days | |||
| Weekend Options | |||
| Choose Weekends | |||
| Event Location System | |||
| Multiple Locations | |||
| Event Organizer System | |||
| Multiple Organizers | |||
| Event Local Time | |||
| Different Timezone Per Event | |||
| Event Timezone | |||
| Set Different Timezone Per Event | |||
| Local Time for All Shortcodes | |||
| Geolocation | |||
| Google Map | |||
| Simple and Advanced Google Maps Direction | |||
| Google Maps in List and Grid Views | |||
| Show Events on Google Maps | |||
| Map View | |||
| Map for List View | |||
| Map for Grid View | |||
| 10+ Map Styles for Google Maps | |||
| Map on Top of List/Grid Shortcodes | |||
| Better Google Maps Module | |||
| Geo-location for Map View | |||
| List View (5 Styles) | |||
| Grid View (7 Styles) | |||
| Monthly Calendar View | |||
| Weekly View | |||
| Daily View | |||
| Timeline View | |||
| Tile View | |||
| Cover View | |||
| Countdown View | |||
| Carousel View | |||
| Slider View | |||
| General Calendar View | |||
| Agenda View | |||
| Full Calendar View | |||
| Yearly View | |||
| Timetable View | |||
| Masonry View | |||
| Available Spot View | |||
| Custom Archive Skin | |||
| Customizable Timetable | |||
| Archive Page Skin | |||
| Custom Category Skin | |||
| Events Archive Status | |||
| 25 Color Skins | |||
| Custom Event Color | |||
| Custom Colors Per Event | |||
| Dark Mode Skin | |||
| Google Fonts and Typography | |||
| Breadcrumbs | |||
| Next / Previous Events | |||
| Related Events Module | |||
| Event Countdown | |||
| Countdown Method Per Event | |||
| Weather Module | |||
| QR Code Module | |||
| Public Download Module | |||
| Social Sharing (11 Networks) | |||
| Popular Social Networks (Tumblr, Pinterest, Flipboard, GetPocket, Reddit, WhatsApp, Telegram) | |||
| Font Awesome Icons | |||
| Custom Sidebar | |||
| Sticky Sidebar | |||
| Custom CSS in Settings | |||
| Hide Event End Time | |||
| Content Only for Bookers | |||
| Show Event Content Only to Booked Users | |||
| Show Normal Labels on All Skins | |||
| Show Ongoing or Expired Events | |||
| Hide Past Events | |||
| Show Only Featured Events | |||
| Show Only Expired Events | |||
| Smooth Month Navigation | |||
| Maximum Date for Skins | |||
| Matching Shortcode and Widget | |||
| Comment Support on Single Event | |||
| Search Filter for All Shortcodes | |||
| Advanced Categorizing and Filtering | |||
| All Taxonomies Search Field | |||
| Multiple Category Search | |||
| Event Cost Search | |||
| Category Filter | |||
| Label Filter | |||
| Location Filter | |||
| Search Option | |||
| Month Filter | |||
| Ajax Live Search Shortcode | |||
| Add to Google Calendar | |||
| Add to iCal / Outlook (.ics) | |||
| iCal Subscription URL | |||
| iCal Download Link in Email | |||
| Google Calendar Link in Email | |||
| Feed / RSS | |||
| Frontend Event Submission | |||
| Add Event from Frontend | |||
| Email on Event Publishing | |||
| Guest (Logged-out) Event Submission | |||
| Event Note for Frontend Submission | |||
| Editor/Admin Frontend Event Management | |||
| Shortcode to Display User Events | |||
| User Profile Shortcode | |||
| Event Cancellation from User Profile | |||
| Event Speakers | |||
| Advanced Event Speaker System | |||
| Event Sponsors | |||
| Display Sponsors on Single Event | |||
| Advanced Booking System | |||
| Booking Form Builder | |||
| Custom Booking Form Per Event | |||
| Rearrange Booking Form Fields | |||
| Custom Fields on Booking Form | |||
| Change Booking Button Label | |||
| Calendar Booking Method | |||
| Date Selection for Booking | |||
| Create Unlimited Free and Paid Tickets | |||
| Free Tickets | |||
| Unlimited Tickets | |||
| Set Total Booking Limit | |||
| Set User Booking Limit | |||
| Set Ticket Limit | |||
| Maximum Booking per Ticket | |||
| Minimum Sale per Ticket | |||
| Booking Limit Per Occurrence | |||
| Booking Calendar View | |||
| Booking Shortcode | |||
| Book Multiple Dates in One Booking | |||
| Book All Occurrences | |||
| Booking for Ongoing Events | |||
| Back Button for Booking Form | |||
| Stop Selling Tickets | |||
| Stop Selling After First Occurrence | |||
| Ticket Style - Row Option | |||
| Booking Progress Bar | |||
| Total Selected Tickets Display | |||
| Total Amount in Confirmation Email | |||
| Total Attendees in Admin Notification | |||
| Attendees in Event | |||
| Ticket Variations / Options | |||
| Ticket Variations Per Ticket | |||
| Downloadable File with Ticket | |||
| Booking Form Interval | |||
| Auto-populate Profile after Booking | |||
| New Booking Badge | |||
| New Event Badge | |||
| Express Attendees Form | |||
| Remove / Add Attendees | |||
| Edit Booking | |||
| Who Can Book | |||
| Enable / Disable Invoice | |||
| Attendee Counter | |||
| Skip First Step of Booking | |||
| Late Booking / Early Bird | |||
| Price Per Date | |||
| Amount Per Date | |||
| MEC Cart (Native Cart & Checkout) | |||
| Booking Button in Modal Window | |||
| Invoice Download Shortcode | |||
| PayPal Integration | |||
| PayPal Standard Gateway | |||
| PayPal Express | |||
| PayPal Credit Card | |||
| Stripe Integration | |||
| Stripe Refund Option | |||
| SCA Compatibility for Stripe | |||
| Stripe Connect (Multi-Vendor) | |||
| WooCommerce Payment Integration | |||
| Pay via WooCommerce | |||
| WooCommerce as Booking System | |||
| Bank Transfer | |||
| Pay Locally | |||
| Sort Payment Gateways | |||
| Enable / Disable Payment Methods | |||
| 5 Payment Methods | |||
| Currency in WooCommerce Order | |||
| Coupon and Discount Manager | |||
| Discount Coupons | |||
| Discount Per User Roles | |||
| Ticket Limit per Coupon | |||
| Deposits / Partial Payments | |||
| Taxes and Fees Engine | |||
| Global Tax / Fee Creation | |||
| Event-specific Fees | |||
| Organizer Payment | |||
| Change Currency Per Event | |||
| Advanced Currency Options | |||
| Email Notifications | |||
| Booking Confirmation to Attendee | |||
| Booking Notification to Admin | |||
| Booking Verification Email | |||
| Admin Booking Confirmation | |||
| Admin Booking Cancellation | |||
| Booking Reminder Notifications | |||
| Cancellation Notification to Attendee | |||
| Booking Rejection Email | |||
| Auto Verification (Email & Booking) | |||
| Resend Verification and Confirmation | |||
| Customizable Notification Emails | |||
| Change Sender Name and Email | |||
| Notifications Per Event | |||
| User Roles as Notification Recipients | |||
| Users as Notification Recipients | |||
| Auto-emails (Scheduled) | |||
| SMS Notifications (Twilio) | |||
| Bulk Email to Attendees | |||
| Send Booking Reminder to All Attendees | |||
| Auto Emails | |||
| Email Marketing (8 Platforms) | |||
| Mailchimp Integration | |||
| MailerLite Integration | |||
| Constant Contact Integration | |||
| ActiveCampaign Integration | |||
| AWeber Integration | |||
| MailPoet Integration | |||
| Campaign Monitor Integration | |||
| Sendfox Integration | |||
| Export Events | |||
| Import/Export Settings | |||
| Export as CSV, MS Excel, JSON, XML | |||
| Import from Google Calendar | |||
| Import from Meetup | |||
| Facebook Events Importer | |||
| Import Facebook Link as Event Link | |||
| Import Facebook Link as More Info | |||
| Google Calendar Auto Sync | |||
| Import from EventOn | |||
| Import from The Events Calendar | |||
| Import from Events Schedule | |||
| Import from Calendarize It | |||
| Import from Event Espresso | |||
| Import from Events Manager | |||
| 10 Plugin Migrations | |||
| CSV Import for Bookings | |||
| CSV Export for Bookings | |||
| MS Excel Export for Bookings | |||
| Elementor Addon | |||
| Visual Composer / WP Bakery Addon | |||
| Divi Addon | |||
| King Composer Addon | |||
| Gutenberg Editor Integration | |||
| Gutenberg Ready | |||
| LearnDash Integration | |||
| Paid Memberships Pro Integration | |||
| Advanced Custom Fields (ACF) Integration | |||
| BuddyPress Integration | |||
| REST API | |||
| Webhooks | |||
| Developer Friendly (Hooks and Filters) | |||
| Fire Custom Functions via WordPress Actions | |||
| Filter Options via WordPress Filters | |||
| Available Hooks | |||
| Override Archive and Single in Theme | |||
| Override Skin Files in Theme | |||
| Customize Single Events | |||
| Customize Shortcodes | |||
| Perfect Codes | |||
| Translation Ready | |||
| WPML Ready | |||
| WordPress Multisite Ready | |||
| RTL Support | |||
| Schema Ready (Structured Data) | |||
| Event Status for Schema | |||
| SEO Plugins Compatibility | |||
| Booking Reports with Charts | |||
| Reporting Dashboard | |||
| Booking Report | |||
| Coupon / Discount Reports | |||
| Current User Events in Admin | |||
| WordPress Dashboard Widgets | |||
| Settings Wizard | |||
| Fast Setup | |||
| Reset Section for Settings | |||
| Auto Cronjob | |||
| Booking Reminder Cron | |||
| Auto Cronjob Daily Sync | |||
| Setup Wizard | |||
| Auto Update | |||
| Google reCAPTCHA | |||
| IP Restriction | |||
| Last Few Tickets Flag | |||
| Lock Pre-filled Fields | |||
| Custom Transaction ID | |||
| Prevent User Account | |||
| Cancellation Reason | |||
| User Registration Options | |||
| Custom Username and Password | |||
| Create Account with Custom Username/Password | |||
| Events Widget | |||
| Matching Shortcode and Visual Composer | |||
| Cache Plugins Compatibility | |||
| PDF Tickets and Invoices | |||
| Attendance Certificates | |||
| Custom Event Fields | |||
| Custom Data for Single Events | |||
| Dynamic Content Shortcode | |||
| Multiple Occurrences of Current Event | |||
| Hide / Show Occurrences per Shortcode | |||
| Change Visibility and Hide Events | |||