✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount

SleekView Charts for EventPrime: turn bookings and events into dashboards

EventPrime stores events as the em_event CPT and bookings as the em_booking CPT with ticket type, attendee count, payment status, and price in postmeta. SleekView Charts reads both CPTs and renders number, pie, bar, and area cards from the same row the admin edits.

♾️ Lifetime License available

SleekView Charts dashboard for EventPrime

Booking pipelines as a planning dashboard

EventPrime (formerly Evolution Event Calendar) stores events as the em_event custom post type and bookings as the em_booking CPT linked back to an event through the em_event_id postmeta key. Each booking holds the chosen ticket type, attendee count, payment status, total price, and customer details in postmeta on the same booking row rather than in a separate table.

The default admin renders the booking list filtered per event, which is fine for the editing workflow each booking needs. It is quieter when the question is the season-wide booking pace, which events sell out fastest, the split between paid and pending bookings across the calendar, and how revenue tracks against the marketing plan. SleekView Charts reads em_booking joined to em_event through the linked postmeta ID as a single dataset.

The dashboard becomes the team's planning surface: total paid bookings this month, status distribution across paid, pending, and refunded, top events by booking revenue, and the daily booking trend across the calendar. Numbers update as bookings move through payment, and nothing duplicates the EventPrime CPTs into a parallel reporting layer the team has to maintain separately.

Workflow

From em_booking rows to a dashboard

1

Connect to em_booking

Point SleekView at the em_booking CPT. Postmeta keys including em_event_id, em_payment_status, em_ticket_id, em_attendee_count, and em_total_price appear as columns ready to drop into chart configs across every card on the dashboard.
2

Join to em_event and tickets

Resolve em_event_id to the em_event post title and em_ticket_id to the ticket definition stored on the parent event. Cards then label by readable event and ticket names instead of the numeric IDs EventPrime stores.
3

Build the four cards

Drop a Number for paid bookings this month, a Pie for payment status mix, a Bar for top events by revenue, and an Area for daily booking pace. Each card uses one column from the joined em_booking dataset across the season.
4

Save the dashboard

Pin the layout as the default Charts view for the events workflow. Coordinators open it each morning to read paid totals, pending pressure, refund rate, and which events are driving most of the booking revenue this week.

Sample dashboard

Charts you can build from EventPrime data

Four cards that turn the em_booking CPT joined to em_event and em_ticket into a booking dashboard, resolved through the linked postmeta IDs across the season ahead.
Number · Default

Paid bookings this month

Headline KPI counting em_booking posts whose em_payment_status postmeta equals paid and whose post_date falls inside the current month. Pending and refunded bookings drop out at the dataset level so the count is live.
Count
Pie · Donut

Payment status mix

Donut split across paid, pending, refunded, and failed using the em_payment_status postmeta on em_booking, so the team sees the current booking mix at a glance without filtering the EventPrime booking list per event.
Count group by em_payment_status
Bar · Horizontal

Top events by revenue

Horizontal bar of top events by gross revenue summing em_total_price from em_booking, joined to em_event on em_event_id to resolve each event ID into a readable event title for the chart label across the season.
Sum(em_total_price) group by em_event_id
Area · Gradient

Daily booking pace

Gradient area chart of bookings per day sourced from the post_date column on em_booking, useful for spotting weekday patterns and the impact of campaigns on booking pace across the calendar's upcoming events.
Count group by post_date

Comparison

Default EventPrime admin vs SleekView Charts

Default EventPrime booking list

  • Booking list is scoped per event, no cross-event totals at a glance
  • No aggregate revenue card across paid bookings and ticket types
  • Payment status mix requires manual counting across per-event screens
  • Date grouping for daily or weekly booking pace is not in the default admin
  • Top events by booking revenue cannot be ranked in the default views

SleekView Charts

  • Number, pie, bar, and area cards drawn from em_booking and em_event
  • Joins resolve em_event_id and em_ticket_id to readable titles, not numbers
  • Revenue uses em_total_price after payment clears via the EventPrime gateways
  • Saved dashboards per coordinator with per-card filter scopes
  • Reads canonical EventPrime CPTs and postmeta, no parallel reporting database

Features

What SleekView Charts gives you for EventPrime

One dashboard, four questions

Paid totals, status mix, top events, and daily pace on a single screen so the morning standup starts from numbers, not from clicking through per-event booking lists in the EventPrime admin one event at a time.

Revenue from em_total_price

Sum aggregations read em_total_price on em_booking, which EventPrime updates when the gateway confirms payment, so the revenue card matches what actually cleared rather than a tentative total still waiting on payment.

Events and tickets joined

Cards group by event title or ticket name through the linked IDs em_booking stores. Readable labels for every chart without manual mapping or a custom report query each time a new event runs on the calendar.

Audience

Who builds EventPrime charts with SleekView

Event coordinators

Open a saved dashboard each morning for paid totals, pending pressure, and which events are filling fastest. The four cards replace the per-event clickthrough on the EventPrime booking screen for routine planning.

Finance and operations

Track gross revenue per event from em_total_price and watch daily pace to forecast cash flow before the season opens, with refunds visible in the refunded slice of the payment status donut at a glance.

Marketing leads

Watch the daily booking area card to measure campaign impact, comparing the slope after a newsletter send against the baseline pace from the previous week or month across the booking calendar.

The bigger picture

Why bookings need aggregate dashboards

A booking list scoped to one event is fine for the editing workflow that single event needs. The moment a programme covers ten events across three months with five ticket tiers and two gateways, the per-event list stops answering the questions that actually matter: how is the pipeline pacing this week, which events are revenue-positive after refunds, and how many seats are still pending payment three days from the door. EventPrime captures all of that information correctly in em_booking and em_event with payment status and price in postmeta, but the default admin renders it as rows the team has to count by hand per event.

SleekView Charts treats the same CPTs as a dataset and aggregates them into number, pie, bar, and area cards that read em_total_price, em_payment_status, and post_date directly. The result is a planning surface where the season is visible at a glance.

Questions

Common questions about SleekView Charts for EventPrime

Charts reads em_booking and em_event directly. SleekView connects to both CPTs and exposes the postmeta keys EventPrime writes, so the dataset has em_payment_status, em_total_price, em_event_id, em_ticket_id, and em_attendee_count ready for groupBy or value duty across every card on the dashboard.

 

Yes. A bar card grouped by em_ticket_id and summing em_total_price returns revenue per ticket. The dataset joins the parent em_event's ticket definitions so the chart shows the ticket name instead of the numeric ID EventPrime stores in the booking row by default.

 

EventPrime stores em_payment_status as readable strings like paid, pending, refunded, and failed. SleekView reads those values directly so the donut chart shows the status name without any extra mapping, with refund and fail counts updating automatically as the gateway posts back to the booking row.

 

Yes. Every card has a filter scope that can target a single em_event_id, a category, or a date range on post_date. The filter applies on top of the aggregation, so a daily pace card scoped to one event shows only that event's booking trend through the calendar.

 

The revenue card sums em_total_price for rows in paid status only by default. Refunded bookings flip em_payment_status to refunded and drop out of the sum on the next refresh, so the chart matches what actually cleared rather than the gross requested amount before the gateway processed the refund.

 

Yes. The free EventPrime plugin writes the em_event and em_booking CPTs with the same postmeta keys. Premium add-ons layer additional fields on top, but the core schema is shared, so a dataset built for the premium tier renders against the free plugin with the add-on-specific cards disabled when those fields are absent.

 

Yes. Each card has an underlying dataset slice that exports to CSV with the columns the chart used to aggregate. Useful when finance needs the gateway-side booking rows behind a revenue total or when a venue partner asks for the bookings behind a specific event row across the season.

 

Reporting plugins typically build a parallel data layer fed by hooks on em_booking writes, which means a second moving part to keep in sync. SleekView Charts reads em_booking directly, so the dashboard reflects the same row the booking screen edits without an extra sync step or stale cache between dashboard and admin views.

 

Pricing

More than 1000+
happy customers

Explore our flexible licensing options tailored to your needs. Upgrade your license anytime to access more features, or opt for a lifetime license for ongoing value, including lifetime updates and lifetime support. Our hassle-free upgrade process ensures that our platform can grow with you, starting from whichever plan you choose.

Starter

€79

EUR

per year

  • 3 websites
  • 1 year of updates
  • 1 year of support

Pro

€149

EUR

per year

  • Unlimited websites
  • 1 year of updates
  • 1 year of support

Lifetime ♾️

Most popular

€249

EUR

once

  • Unlimited websites
  • Lifetime updates
  • Lifetime support

...or get the Bundle Deal
and save €250 🎁

The Bundle (unlimited sites)

Pay once, own it forever

Elevate your WordPress site with our exclusive plugin bundle that includes all of our premium plugins in one package. Enjoy lifetime updates and lifetime support. Save significantly compared to buying plugins individually.

What’s included

  • SleekAI

  • SleekByte

  • SleekMotion

  • SleekPixel

  • SleekRank

  • SleekView