Every signal ends in an action, and a proof.
The numbers are measured from your sessions; the AI only puts them into words. It never decides who to target, and never sends anything on its own.
The loop
One loop: understand, act, prove
Understand with measured numbers, act with your confirmation, prove by comparing with players set aside. Every module below plugs into that loop.
01 · Copilot
Ask a question. Get measured numbers, not a guess.
The copilot writes the answer; the numbers next to it are measured by Minealyze from your data, and shown as-is.
- The numbers next to the words · every figure the copilot writes is shown beside its measurement.
- Question meter, always visible · x out of y questions this month, shown on every answer.
- It abstains on purpose · "I can't answer that" beats an invented number, every time.
Ask a question…
The copilot proposes. It never sends: preview first, confirm second.
Show the walkthrough as text
- A question is typed: "Who is slipping away this week?"
- The copilot reads the measured data, never the model alone.
- A short answer arrives: 5 players slipping, absent 9 days on average.
- The proof table fills in, row by row: 5 players, Zylkor first, with his top reason.
- Sources are shown (sessions, Tebex store) with an honest confidence badge.
- A proposal appears: nudge these 5 players. Nothing has been sent yet.
- The copilot proposes. It never sends: preview first, confirm second.
Answers are backed by measurements, never invented.
The AI only writes the words; who to flag and every number come from measured data.
02 · Who's slipping away
Who is slipping away, and why, by name
Not a percentage on a graph: the list of players slipping away, each with their top reason, sorted by urgency, never by money.
- Sorted by urgency · the players closest to gone for good rise to the top as the measurements update.
- Locked, not mutilated · on Free, the count stays visible; only the names unlock with a paid plan.
- The top reason, in plain words · never a bare score; the reason is written out, with real units.
▍ > reading sessions…
Show the walkthrough as text
- The plugin reads the sessions.
- Five players arrive, each with their top reason in plain words.
- Zylkor moves to the top: his rhythm broke 6 days ago.
- 24 players slipping in total, 19 names locked on this plan.
The group and the reason are measured, not guessed.
Recomputed every night from sessions (for the pros: player groups + risk model).
03 · Why they're slipping
Every flagged player explains themselves
Click a name and see the top reason, the data behind it, and how sure we are, never an opaque number alone.
- The data behind it · each explanation shows which measurements it was computed from.
- Honest about doubt · when we are less sure, it says "keep an eye", never a premature nudge button.
- AI-written recap, marked as such · a plain-words summary sits beside the measured facts, badge "AI-written".
Zylkor
Store support €74.50
Top reason · measured
His session rhythm broke: nothing for 6 days (usually plays every 2)
Zylkor logged in almost every night for 3 weeks; no session in 6 days.
The data behind it
- sessions
- connected shop
- player groups
The reason is measured; the recap is AI-written.
Each signal is compared to the player's own habits; the strongest one wins.
04 · First 5 minutes
Find the step where newcomers actually give up
Your newcomers' first steps as horizontal bars, the worst break highlighted, and the one step most tied to coming back: the hook.
- The hook · the step most tied to coming back gets its own badge, measured, not a hunch.
- Biggest break first · the drop between two steps is labelled in points, not buried in a slope.
- Honest with few newcomers · too few players in the window? Said plainly, never forced.
→ Schedule a social event right after the tutorial.
Show the walkthrough as text
- 412 newcomers arrive that week; each step counts how many keep going.
- Step 2, tutorial done: 86%, 354 players.
- Step 3, first chat: 54%, 223 players. The break from step 2 is highlighted: minus 32 points.
- Step 4, first chest opened: 38%, 157 players.
- Step 5, back the next day: 24%, 99 players. Tip: schedule a social event right after the tutorial.
The hook is measured on your newcomers, not asserted.
Newcomers who did each step are compared to those who did not; the most telling step wins.
05 · Alerts
A spike gets a lead, not just a graph
When a number jumps out of your server's ordinary, a card opens with a lead and suggested next steps. Minealyze flags, you decide.
- No automatic action · an alert opens a card to look into; nothing bans, nothing rolls back, nothing sends itself.
- Handled, not just seen · acknowledge, resolve, or dismiss; your dismissals help tune the sensitivity.
- Sensitivity you can set · low, normal or high, applied on the next pass, never silently.
7-day emeralds-per-hour curve, spike at 4.2 times the usual level, spotted at 03:40.
×4.2
Lead: an unregulated automated farm
usual level, 7d ≈310/h · peak ≈1302/h
Show the walkthrough as text
- The 7-day curve draws in: a steady rhythm, day and night cycles.
- A spike appears at 03:40: 4.2 times the usual level.
- An alert card opens. Lead: an unregulated automated farm. You decide, nothing acts on its own.
- Severity: high.
- Measured impact: projected shop sales are up.
The jump is measured against your server's own ordinary.
Several simple, deterministic checks must agree before a card opens (for the pros: z-score, EWMA, IQR).
06 · Auto-nudges
A rule is born disarmed; you arm it
A rule never runs on its own the day you create it. Hard caps are shown before arming, and the kill switch is never locked by your plan.
- Hard caps up front · pace, actions per month, and budget are numbers you see before arming, not fine print.
- The log shows refusals too · what the rule did AND what it declined to do, with the reason in plain words.
- Kill switch, always unlocked · stopping auto-nudges is never a paid feature.
Auto-nudge · regulars away 7 days
Caps
Max 1 / player / 14 d · 40 actions / month · €60 budget
07 · Connect
One .jar, one key, and your shop if you have one
Paper/Spigot plugin, read-only: it never writes to your world. Coming from Plan? Upload the database.db and get a report of what was created, merged, and skipped as duplicate.
- Tebex or Azuriom, verified · a shop only shows "Connected" once we have actually read it: a checked signature for Tebex, a successful query for Azuriom. And the shop is optional.
- Plan import, one upload · a real report (created / merged / duplicates), not a silent success toast.
- No chat content collected · the honesty line is fixed in the product, not a footnote.
[12:04:11 INFO]: [Minealyze] Minealyze v1.4.2 enabled (Paper 1.21.4)
[12:04:11 INFO]: [Minealyze] Session tracking: read-only. No chat data collected.
- ✓Plugin installed
- ✓Key connected
- ✓Store linked
No chat data is collected.
Show the walkthrough as text
- Step 1, install the .jar: the Paper console confirms activation, read-only tracking.
- Step 2, paste the masked server key: the plugin connects.
- Step 3, link the Tebex store: the store is linked, checklist complete.
Connection status is verified, never assumed.
Plugin heartbeat + signed Tebex webhook or Azuriom query + import report.
08 · Deliver
The morning recap lands in Discord, before you log in
Same numbers as your dashboard, delivered at 08:07: who is slipping away, how the store follows, and the one alert worth opening.
- Links, not just numbers · the recap links straight into the Who's slipping away list behind it.
- Same source, same figures · the recap and the dashboard read the same measured data.
- Webhook you configure · per-server, encrypted secret; nothing fires until it is set.
Morning recap · Emberfall
SLIPPING AWAY
24
+5 vs prev. 7d
STORE 7D
€312.40
-8.1% vs prev. 7d
ALERT
×4.2
Show the walkthrough as text
- The message arrives at 08:07, before you open anything.
- Players slipping away: 24, 5 of them new this week.
- The store follows: €312.40 over 7 days, down 8.1% vs the week before.
- One alert: emeralds per hour at 4.2 times the usual. The link opens the list.
Every field in the recap comes from a dashboard measurement.
Nightly computations → measured numbers → Discord message.
The settings that keep this honest
Where you stand, your own AI key, and your data, all with an explicit, verifiable state.
Where you stand
Compare your server to servers like yours, anonymously and only if you opt in. A stat only shows when enough servers contribute for nobody to be recognizable; below that, we say "not enough servers yet".
BACK AFTER 7 DAYS, VS SERVERS LIKE YOURS
+6pts
Your own AI key
Optional: plug in your own Anthropic key so AI writing runs and bills on your account. Tested on entry, stored encrypted, only the last 4 characters ever shown again.
YOUR AI KEY
sk-ant-••••••••ab12TestedExport, on the Free plan too
CSVJSONCSV or JSON, prepared in the background with a real link when ready; failures and plan limits are shown as they are, never silently swallowed.
players.csv · 4,812 rows · ready in 8s
Nothing sensitive happens without you
Preview → confirm → log
Every nudge is previewed and confirmed before it sends. Auto-nudges are born disarmed. Every action, and every refusal, goes in the log.
Never pay-to-win
Generated rewards stay cosmetic or social, never a gameplay advantage, and never in breach of Mojang's rule (the EULA).
Coded usernames before any AI call
Usernames and IDs are replaced by codes before anything is sent to an AI, and chat is never collected. Scores are computed without AI: no model ever "reads" a player.
Caps and "do not disturb"
No nudge on a tiny group, per-player caps, and "do not disturb" respected: too many messages drives people away faster than no message at all.
What this isn't
See the loop on your own server
Drop the plugin: your server's numbers are free, for good. Coming from Plan? Import your history in one upload.
Get started free