Content generated with AI — it may contain mistakes.

Insights

Analytics

The retention funnel of each journey, how abandoned steps are counted, and the events sent to ExyliaAnalytics.

A journey exists to keep new players, so ExyliaJourney measures how well each one does it.

The funnel

/journeyadmin stats <journey>, FUNNEL on a journey's screen, or a right-click on it in the journey list, opens its funnel.

The header shows the whole journey: how many times it was started, completed, skipped and abandoned, its completion rate and the average time to finish it. Below, one card per step, in order:

FigureMeaning
ReachedPlayers who started this step.
ShareReached, over the journey's starts.
CompletedPlayers who completed it.
Pass rateCompleted, over reached.
SkippedPlayers who skipped it.
AbandonedPlayers who stopped making progress on it (see below).
Average timeHow long it took to complete, on average.

The step that loses the most players is shown in red. That is the step to make clearer, shorter or better guided.

Counters are only ever added to, never rewritten, so several servers sharing one database build one funnel together. Renaming a step's id starts its counters from zero; rewording its title does not.

Abandoned steps

A step counts once as abandoned when it sees no progress for abandon-after (config.yml, 7 days by default):

  • the player left and never came back while on it — offline players are checked once an hour;
  • or the player keeps playing but does nothing for it.

A step that runs out of its timeout fails: the journey stops (its triggers can start it again, from the first step) and the step counts as abandoned too, with the reason timeout. abandon-after: 0s turns idle abandonment off.

ExyliaAnalytics

With ExyliaAnalytics installed, every journey reports its events to the Exylia Analytics platform, where they can be charted and turned into funnels next to the rest of the server's data. Without it nothing is sent and nothing needs configuring.

EventWhenProperties
journey.startA journey starts.journey, total_steps, cause (first_join, join, command, region_enter, npc_click, journey_complete, permission, custom or api)
journey.step_completeA step is completed.journey, step, step_number, seconds
journey.step_skipA step is skipped.journey, step, step_number
journey.skipA whole journey is skipped.journey, step, step_number (where it was)
journey.completeA journey is completed.journey, seconds
journey.abandonA step counts as abandoned.journey, step, step_number, reason (idle or timeout)
journey.stopA journey is stopped by an admin (command or editor) or another plugin. A timeout is an abandon, not a stop.journey, step, step_number, reason (admin or api)
journey.catalogServer-wide, one per loaded journey: on start, after a reload or an editor change, and once a day.journey, name (plain text), steps (step ids in order, comma separated), steps_truncated (only when the ids did not fit in 200 characters), total_steps, triggers (comma separated), repeatable, skippable

step_number counts from 1. Admin test runs send nothing.

Something missing on this page? Tell us on Discord