activecollab / insight
Simple user engagement tracking library
Requires
- php: >=7.0.0
- activecollab/databaseconnection: ^2.0
- doctrine/inflector: ^1.0
- psr/log: ~1.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ~1.11.5
- monolog/monolog: ~1.20.0
- phpunit/phpunit: ^5.4
This package is auto-updated.
Last update: 2024-12-05 01:18:50 UTC
README
Account Status
An account can have following statuses:
- Trial - User is in trial mode. Conversion or cancelation is expected. If not, we'll consider an account as retired.
- Free - User is using an account in free mode. What this means to your app may very, but from Insight's perspective, it means that you have 0 MRR from this account,
- Paid - User is paying for the service. MRR must exist (and we all know that MRR is good for business),
- Retired - Account got archived because of "neglect" (user stopped testing the software, or paying, but did not convert or cancel; payment failed and user did not update billing info etc),
- Canceled - Account is archived (or even completely removed) because user request that.
Metrics
By adding account data as important account events happen, Insight will be able to provide following numbers:
- Conversion rate (visitors to trial as first step, and trial to paid as second step),
- Number of trial, free, paid, retired and canceled accounts on each day,
- Various timelines for accounts (status changes, MRR changes, plan and billing period changes)
- Monthly Recurring Revenue (MMR)
- Average Revenue per User (ARPU)
- Churn Rate (coming soon)
- Customer Lifetime (coming soon)
- Customer Lifetime Value (coming soon)
MRR
Monthly Recurring Revenue (MMR) shows how much revenue are you getting each month from your users. It's calculated as sum of MRR values of each paying account on a given day. To get the value, simply call:
$insight->accounts->mrr->getOnDay(); // Today $insight->accounts->mrr->getOnDay(new DateValue('2016-02-22')); // Specific day
ARPU
Average Revenue per User (ARPU) shows you how much monthly revenue do you get per user on average. You can grow your business quite a bit by focusing on increase of ARPU (using upgrades, plan changes etc), so it's good to keep an eye on this number. To get the value, call:
$insight->accounts->arpu->getOnDay(); // Today $insight->accounts->arpu->getOnDay(new DateValue('2016-02-22')); // Specific day
Running Tests
cd
to this directory and run:
phpunit