{{ __('Admin · Billing & plans · Order analytics') }}
{{ __('Order') }} {{ __('analytics') }}
{{ __("Subscriptions, upgrades, downgrades, add-ons, and cancellations — what's driving net revenue motion across the platform.") }}
{{ __('Total orders') }}
{{ $stats['total'] }}
{{ $stats['totalDelta'] }}
{{ __('Net new MRR') }}
{{ $stats['newMrr'] }}
{{ $stats['upgrades'] }}
{{ __('Lost MRR') }}
{{ $stats['lostMrr'] }}
{{ $stats['cancels'] }}
{{ __('Avg order value') }}
{{ $stats['aov'] }}
{{ __('paid orders') }}
{{ __('Add-on attach') }}
{{ $stats['attachPct'] }}
{{ $stats['attachLabel'] }}
{{ __('Conversion rate') }}
{{ $stats['convPct'] }}
{{ __('signup → paid') }}
{{ __('Daily order motion') }}
{{ __('New, upgrades, downgrades, cancels') }}
New
Upgrade
Downgrade
Cancel
{{ __('Order type mix') }}
{{ __('By type') }}
@foreach ($typeMix['rows'] as $r)
{{ $r['label'] }}{{ number_format($r['count']) }}
@endforeach
{{ __('Add-ons sold') }}
{{ __('Top performers') }}
-
@forelse ($addons as $a)
-
{{ $a['label'] }}{{ $a['count'] }} · {{ $a['total'] }}
@empty
- {{ __('No add-on orders in this window.') }} @endforelse
{{ __('Conversion funnel') }}
{{ __('Visit → paid') }}
@foreach ($funnel as $i => $f)
@php
$barColor = match (true) {
$i === 0 => 'bg-wa-deep',
$i === 1 => 'bg-wa-deep',
$i === 2 => 'bg-wa-teal',
$i === 3 => 'bg-accent-amber',
default => 'bg-accent-coral',
};
$textTone = $i === count($funnel) - 1 ? 'text-wa-deep' : '';
@endphp
@endforeach
{{ $f['label'] }}
{{ number_format($f['count']) }}
@if ($f['pct'])
· {{ $f['pct'] }}
@endif
{{ __('By country') }}
{{ __('Top markets') }}
-
@php $countryTones = ['#FFF4E0','#D9E5F2','#E7FFDB','#F3E9FF','#FEE4E2','#EFEBE0']; @endphp
@forelse ($byCountry as $i => $c)
- {{ $c['code'] }}{{ $c['code'] }}{{ number_format($c['count']) }} @empty
- {{ __('No country data yet.') }} @endforelse
{{ __('Cohort retention') }}
% of customers still subscribed N months later
| {{ __('Cohort') }} | {{ __('Size') }} | M0 | M1 | M2 | M3 | M4 | M5 |
|---|---|---|---|---|---|---|---|
| {{ $row['label'] }} · {{ $row['size'] }} | {{ $row['size'] }} | @foreach ($row['cells'] as $k => $cell) @if ($cell === null)— | @else @php $opacity = ['', '/85', '/75', '/65', '/55', '/45'][$k] ?? '/45'; @endphp{{ $cell }}% | @endif @endforeach||||
| {{ __('No workspace signups yet.') }} | |||||||