Indicateurs d’exploitation de l’app open source Spliit : usage, coûts et dons de la communauté
(spliit.app)- Pour marquer la première année de la version actuellement publique de Spliit, une application open source de partage de dépenses, l’équipe a publié les chiffres d’usage, de coûts et de dons des 12 derniers mois dans un souci de transparence
- Le site a enregistré 152 000 visites et le trafic hebdomadaire est passé d’environ 200 visites à 5 000~6 000, avec un taux de rebond de 33 %, ce qui montre que les utilisateurs vont au-delà de l’écran d’accueil pour effectuer de vraies actions
- Au moment de la rédaction, les utilisateurs ont créé près de 15 000 groupes et 162 000 dépenses, et depuis janvier 2024, environ 300 groupes et 2 000 dépenses sont créés chaque semaine
- Les coûts d’exploitation sont d’environ 115 dollars par mois, principalement liés à l’hébergement de la base de données, ce qui fait de l’usage mondial de celle-ci la principale contrainte d’optimisation des coûts
- Spliit reste gratuit et ses revenus reposent sur GitHub Sponsors et les dons Stripe ; les dons ne couvrent pas encore totalement les coûts, mais ils s’en approchent fortement
L’ampleur de l’usage de Spliit
- Spliit a été créé il y a quelques années, mais la version actuellement utilisable en est à sa première année de publication
- Ces données d’usage, de coûts et de dons ont été publiées après qu’un utilisateur GitHub a suggéré ce partage au nom de la transparence
- Au cours des 12 derniers mois, Spliit a enregistré 152 000 visites
- Au départ, le site recevait environ 200 visites par semaine
- Il en reçoit désormais régulièrement entre 5 000 et 6 000 par semaine
- Le taux de rebond est de 33 %
- La plupart des visiteurs ne quittent pas le site après avoir vu uniquement la page d’accueil
- Ils poursuivent avec des actions comme convertir un groupe, créer une dépense ou lire un billet de blog
Liens partagés et sources d’acquisition
- Parmi les 152 000 visiteurs, au moins 29 000 personnes ont utilisé un lien partagé
- Le flux d’usage habituel consiste à ce qu’une personne crée un groupe puis partage le lien avec les participants
- Reddit apporte également beaucoup de trafic
- Spliit y est mentionné dans des publications cherchant une alternative à Splitwise
- Les pays d’où provient le plus de trafic sont Germany, United States, India
- La raison pour laquelle Spliit y est davantage utilisé n’est pas connue
Groupes et dépenses créés par les utilisateurs
- Les actions principales les plus fréquentes sur Spliit sont la création de groupes et l’ajout de dépenses
- Au moment de la rédaction, les utilisateurs ont créé près de 15 000 groupes et un total de 162 000 dépenses
- Depuis janvier 2024, le suivi montre la création d’environ 300 groupes et 2 000 dépenses par semaine
- La distribution du nombre de dépenses par groupe montre qu’au moins 4 600 groupes n’ont aucune dépense, ce qui laisse penser qu’ils ont été créés pour tester l’application
- Parmi les quelque 10 000 groupes restants, la moitié contient plus de 5 dépenses
Coûts mensuels d’exploitation
- Le coût d’exploitation de Spliit est d’environ 115 dollars par mois
- L’essentiel de cette somme provient de l’hébergement de la base de données
- La base de données est hébergée sur Vercel
- La tarification est calculée sur le temps total mensuel de lecture de la base de données
- Les coûts d’écriture sont presque nuls
- Spliit étant utilisé dans le monde entier, la base de données est sollicitée presque en continu tout au long du mois
- Le coût de la base de données est un point que l’équipe souhaite améliorer, et il pourrait exister un fournisseur plus économique pour le cas d’usage de Spliit
Principe de gratuité et dons
- Le modèle de Spliit reste celui d’un projet open source, et l’application continuera d’être gratuite
- Des fonctionnalités premium pourront éventuellement apparaître à l’avenir, mais pas sous une forme qui limiterait l’usage courant de l’application
- À l’heure actuelle, la seule source de revenus de Spliit est le don
- Le premier mois, quelqu’un a fait un don de 70 dollars, puis d’autres utilisateurs ont donné 5 ou 20 dollars
- Les dons ne couvrent pas encore tous les coûts du projet, mais ils atteignent un niveau proche des dépenses
Pourquoi avoir ajouté une fonction de don
- Les dons ne sont pas indispensables au fonctionnement de Spliit
- Le mainteneur a un emploi à temps plein et des revenus suffisants pour vivre
- Il est satisfait de prendre lui-même en charge une partie des coûts pour la communauté
- Deux raisons ont conduit à ajouter la fonction de don
- Plusieurs utilisateurs ont demandé un moyen de rendre la pareille parce qu’ils apprécient le projet
- Le souhait est aussi que, si le mainteneur quitte un jour le projet, la communauté puisse le faire vivre sans problème financier
Temps de maintenance et contributions de la communauté
- Le temps consacré par le mainteneur à Spliit est d’environ 5 à 10 heures par mois
- Ces derniers mois, la plupart des nouvelles fonctionnalités ajoutées à l’application n’ont pas été réalisées par le mainteneur, mais par des contributeurs de la communauté
- Le temps du mainteneur est principalement consacré à la gestion du projet
- Gestion des suggestions de fonctionnalités, rapports de bug et questions dans les issues
- Revue et test des pull requests
- Déploiement des nouvelles fonctionnalités pour les rendre accessibles à tous les utilisateurs
- Spliit demande beaucoup de temps, mais une part importante de ce travail est assurée par d’autres contributeurs
Futures mises à jour de transparence
- Spliit couvre désormais la majeure partie de ses coûts d’hébergement grâce aux dons, et la partie manquante est payée chaque mois par le mainteneur
- Le projet prévoit de poursuivre ces mises à jour de transparence pour partager régulièrement son avancement et sa situation financière
- Les questions de suivi peuvent être posées à deux endroits
1 commentaires
Commentaires sur Hacker News
Je me suis toujours demandé ce que les gens utilisaient comme base de données pour ce genre d’usage. J’aime beaucoup SQLite, mais j’ai fini par préférer des apps généralement découplées et presque sans état
Les données sont presque toujours l’élément le plus important, donc j’aime pouvoir faire évoluer, remplacer ou jeter l’infra applicative à volonté sans m’en soucier
J’ai aussi envisagé un VPS Postgres, mais j’utilise neon.tech avec plus de satisfaction que prévu. J’ai particulièrement apprécié l’interface graphique et le branching
En vieillissant et avec moins de temps, la vitesse et le confort prennent le pas sur mon réflexe d’économie bien ancré. Les bases de données SaaS m’ont fait gagner du temps, mais la facturation mensuelle et la variabilité me déplaisent toujours
Tu peux supprimer ton app et la redéployer ailleurs, Litestream récupère les données et tout continue comme si de rien n’était
Au début de cet article, je montre une démo où j’ajoute Litestream à mon app, puis je supprime l’instance Heroku et redéploie une nouvelle instance sur Fly.io. Litestream transfère toutes les données vers le nouveau déploiement : https://mtlynch.io/litestream/
Je ne vois pas bien ce qu’on peut rencontrer qui dépasse la capacité d’un petit VPS
Un VPS dédié à la base de données peut se justifier, mais si les requêtes sont correctement mises en cache, ça tient pour un service non critique, à condition surtout de renforcer les sauvegardes
En particulier le fait de garder tout à jour, de gérer la sécurité et de configurer correctement. La configuration initiale est facile, mais c’est la suite qui compte ; je me demande comment on gère généralement ça aujourd’hui
J’ai essayé l’app et j’ai beaucoup aimé le fait qu’il ne soit pas nécessaire de créer un compte. On reçoit un lien privé et on le partage avec le groupe ; la personne qui ouvre le lien choisit qui elle est pour se “connecter”
Bien sûr, on peut se connecter en tant qu’un autre membre et abuser du système, mais ça ressemble à un compromis choisi par le développeur, qui connaît son public, pour offrir une expérience sans friction. C’est propre
Je m’en inspire beaucoup pour créer une app permettant à un club de lecture d’organiser une “élection” afin de choisir le prochain livre. Je veux prendre en charge plusieurs modes de vote : vote préférentiel, vote d’approbation, vote par score, scrutin majoritaire simple, etc.
[0] https://www.when2meet.com/
Pour répondre à la question de la réduction des coûts, en le faisant tourner sur un unique VPS Linux, on pourrait probablement descendre à 5 à 10 dollars par mois
Ce qui est intéressant, c’est que la courbe de croissance est linéaire. L’app a clairement une certaine traction et un côté viral, alors pourquoi ne croît-elle pas de façon exponentielle ?
En réalité, ce serait autour de 100 dollars, mais honnêtement c’est probablement assez surdimensionné. Pourtant, mon trafic est bien supérieur à celui décrit dans le billet
Je pense qu’en améliorant l’architecture, on pourrait réduire les coûts
Vers le milieu de l’article, un autre modèle qui correspond mieux à ce type de croissance est proposé : la croissance logistique. Après une forte croissance initiale vient une phase de croissance linéaire, puis la courbe finit par s’aplatir en atteignant une “limite de capacité” ou une “saturation du marché”
J’héberge des applications similaires chez netcup, Hetzner et autres pour 3 dollars par mois, et lorsqu’elles sont passées sur HN, elles ont facilement encaissé plus de 10 000 requêtes par heure
Indépendamment des chiffres réels, je me demande toujours comment ce genre de projet finance ses frais de fonctionnement
Une idée qui m’intéressait était de gérer ça de façon décentralisée. De l’argent entre dans le projet, et s’il ne peut pas payer la facture mensuelle, il meurt
S’il reçoit suffisamment d’excédent, on pourrait acheter des bons du Trésor américain à échéance adaptée et les consommer au fil du temps
Avant, cela aurait nécessité de l’automatisation, mais dans un futur proche, peut-être qu’un agent IA limité pourrait jouer le rôle de serveur et simplement faire son travail
Le modèle à l’usage est bon quand le chiffre d’affaires augmente aussi avec l’usage. Pour mes projets, j’aimerais avoir une offre où, même si les coûts fixes sont plus élevés, le risque porte seulement sur la disponibilité, pas sur les coûts
Avec la facturation à l’usage, les revenus correspondent donc souvent mal aux attentes, et les offres par paliers gagnent facilement sur le marché en captant davantage d’argent
J’ai l’impression qu’une exception est le stockage de fichiers, où les gens sous-estiment plutôt la capacité dont ils auront besoin
J’adore spliit et je l’utilise régulièrement, plusieurs fois par semaine
Ce qui me rend fou, c’est qu’il fonctionne vraiment mal sur une connexion mobile lente. J’aimerais ajouter une prise en charge local-first ou offline-first, mais je sais que ce serait un gros changement
Cela dit, rien que mettre en cache des pages comme celle d’ajout de dépense améliorerait déjà pas mal les choses
L’idée est bonne, mais vu les chiffres de trafic, un droplet DigitalOcean à 4 dollars par mois donnerait probablement le même résultat
En utilisant Vercel, ils ont en quelque sorte brûlé plus de 1 000 dollars. C’est peut-être parce que je vieillis, mais je ne comprends pas bien cette logique
Une fois un VPS de base configuré, on obtient le même résultat pour un coût neutre, et c’est comme ça que je fais tourner mes petites apps gratuites
Peut-être que pour l’auteur, 100 dollars par mois ne sont pas un gros problème, ou que le confort vaut ce prix
Le coût d’hébergement web est quasiment nul. La majeure partie du coût vient de la base de données
C’est une excellente app. J’ai apprécié que le détail des coûts soit partagé
Si les banques se réveillaient, cette fonctionnalité serait devenue une fonction de base des apps bancaires, construite sur ACH/Zelle/FedNow
L’organisateur devrait pouvoir créer un groupe dans son app bancaire et inviter des utilisateurs ayant des comptes dans différentes banques
Les demandes de paiement devraient se régler en un clic, sans avoir à vérifier manuellement si l’argent est arrivé sur Cash App, un compte bancaire ou Venmo, puis à cocher la dépense dans une app tierce
Ce qu’il faut, c’est une intégration avec des prestataires de paiement. Il suffirait de permettre un paiement immédiat par ACH ou carte bancaire
Cela pourrait aussi devenir une option de monétisation
Je pense qu’il vaut mieux qu’elle reste open source et gratuite, et qu’elle demeure une app pratique pour les transactions en espèces
Utiliser une solution de base de données serverless comme Supabase ou NeonDB permettrait probablement d’économiser pas mal d’argent