2 ポイント 投稿者 GN⁺ 2024-10-20 | 1件のコメント | WhatsAppで共有
  • 現在のバージョンが公開されてから1年を迎えたオープンソースの割り勘アプリ Spliit が、運営の透明性のために過去12か月の利用状況・コスト・寄付の現況を公開
  • 訪問数は15.2万回で、週次訪問数は約200回から5,000〜6,000回へ増加し、直帰率33%はユーザーがホーム画面を超えて実際の行動につながっていることを示す
  • 執筆時点でユーザーはほぼ1.5万件のグループと16.2万件の支出を作成しており、2024年1月以降は毎週約300件のグループと2,000件の支出が生成されている
  • 運営コストは月約115ドルで、その大半はデータベースホスティングによるものであり、世界中の利用によるデータベース使用量がコスト最適化の主要な制約となっている
  • Spliit は無料利用を維持しており、収益はGitHub Sponsors と Stripe 寄付に依存している。寄付金は総コストを完全には賄えていないが、かなり近い水準にある

Spliit の利用規模

  • Spliit は数年前に作られたが、現在利用可能なバージョンは公開1年目
  • GitHub ユーザーが透明性の観点から情報公開を提案したことで、利用状況・コスト・寄付の現況が公開された
  • 過去12か月で Spliit は15.2万回の訪問を記録
    • 初期は週あたり約200回の訪問だった
    • 現在は週5,000〜6,000回の訪問が安定して発生している
  • 直帰率は33%
    • 訪問者の大半はホームページだけを見て離脱していない
    • グループへの移行、支出の作成、ブログ記事の閲覧といった行動につながっている

共有リンクと流入経路

  • 15.2万人の訪問者のうち少なくとも2.9万人は共有リンクを利用
  • 一般的な利用フローは、1人がグループを作成し、その後参加者にリンクを共有する形
  • Reddit からも多くの訪問者が流入している
    • Splitwise の代替を探す投稿で Spliit が言及されている
  • 訪問者が多かった国はGermany, United States, India
    • これらの国でより多く使われている理由は確認されていない

ユーザーが作成するグループと支出

  • Spliit でユーザーが最も頻繁に行う中心的な行動はグループ作成支出追加
  • 執筆時点でユーザーはほぼ1.5万件のグループを作成し、合計16.2万件の支出を生成している
  • 2024年1月以降の追跡では、毎週約300件のグループ2,000件の支出が生成されている
  • グループごとの支出数の分布を見ると、少なくとも4,600件のグループには支出が1件もなく、アプリのテスト用に作成されたと考えられる
  • 残り約1万件のグループのうち半数は5件超の支出を含む

月間運営コスト

  • Spliit の運営コストは月約115ドル
  • コストの大半はデータベースホスティングによるもの
  • データベースは Vercel にホスティングされている
    • 料金は月間のデータベース読み取り総時間を基準に計算される
    • 書き込みコストはほとんどない
  • Spliit は世界中で使われているため、データベースはほぼ1か月中ずっと利用されている
  • データベースコストは改善したい項目であり、Spliit のユースケースにより安価なデータベースプロバイダーがある可能性がある

無料利用の原則と寄付

  • Spliit のビジネスモデルはオープンソースプロジェクトとして維持されており、今後も無料で利用できる
  • 将来的にプレミアム機能が追加される可能性はあるが、一般的なアプリ利用を制限する形ではない
  • 現在、Spliit の唯一の収益源は寄付
  • 最初の月にはある人が70ドルを寄付し、その後は5ドルや20ドルを寄付するユーザーがいる
  • 寄付金はまだプロジェクト全体のコストを完全には賄えていないが、コストに近い水準まで到達している

寄付機能を設けた理由

  • Spliit の運営に寄付が不可欠というわけではない
    • 運営者にはフルタイムの仕事があり、生活に十分な収入がある
    • コミュニティのために一部コストを負担することに満足している
  • 寄付機能を追加した理由は2つある
    • 複数のユーザーがプロジェクトを気に入り、お返しの方法を求めた
    • 将来、運営者がプロジェクトを離れても、コミュニティが資金面の問題なくプロジェクトを維持できるようにしたい

メンテナンス時間とコミュニティ貢献

  • 運営者が Spliit に使う時間は月5〜10時間ほど
  • ここ数か月でアプリに追加された新機能の大半は、運営者ではなくコミュニティ貢献者が作ったもの
  • 運営者の時間は主にプロジェクト管理に使われている
    • issues で機能提案、バグ報告、質問を管理
    • pull requests をレビューし、テストする
    • 新機能をデプロイして、すべてのユーザーが利用できるようにする
  • Spliit には多くの時間が投入されているが、そのかなりの部分は他の貢献者たちが担っている

今後の透明性アップデート

  • Spliit は寄付金でホスティングコストの大半を賄っており、不足する一部のコストは運営者が毎月負担している
  • 今後もプロジェクトの進捗と資金状況を定期的に共有する透明性アップデートを続ける計画
  • 追加の質問は2か所で受け付けている

1件のコメント

 
GN⁺ 2024-10-20
Hacker Newsのコメント
  • こういう用途のデータベースとして、みんな何を使っているのかいつも気になっている。SQLiteはかなり好きだけど、アプリは基本的に分離されていて、ほとんど状態を持たない形を好むようになった
    たいていの場合、データがいちばん重要なので、アプリのインフラは心配せずに自由にスケール、置き換え、廃棄できるのがいい
    PostgresのVPSも考えたけれど、予想以上にneon.techをうまく使えている。特にGUIとブランチングがよかった
    年を取り、時間が少なくなるにつれて、身に染みついた節約志向よりもスピードと利便性のほうが重要になってきている。SaaSデータベースは作業を速くしてくれたが、月次請求と変動性は今でも気に入らない

    • SQLiteをLitestreamと一緒に使ってみたことがあるのか気になる。それこそが利点だ
      アプリを消して別の場所にデプロイしても、Litestreamがデータを取り戻して、何事もなかったかのように続けられる
      この記事の前半では、自分のアプリにLitestreamを付けたあと、Herokuインスタンスを消してFly.ioに新しいインスタンスを再デプロイするデモを見せている。Litestreamが新しいデプロイへデータをすべて移してくれる: https://mtlynch.io/litestream/
    • 単純なアプリなら、少しキャッシュを付けるだけでmysqlやPerforce系、Postgresを動かすのは難しくない
      小さなVPSの容量を超えるほど、何に直面するのかよく分からない
      データベース用の独立したVPSは理にかなっているが、リクエストが適切にキャッシュされているなら、非中核サービスでは持ちこたえられるし、バックアップだけをより堅牢にすればいい
    • こういう用途にVPSを立てるのも魅力的だが、10年以上バックエンド作業を本格的にやっていないので、運用管理が心配だ
      特に、常に最新の状態に保つこと、セキュリティを確保すること、正しく設定することが問題だ。初期設定は簡単だが、その後が肝心で、最近は普通どう処理しているのか気になる
  • アプリを使ってみたが、アカウント作成が不要な点がとてもよかった。非公開リンクを受け取ってグループに共有すると、リンクを開いた人が自分が誰かを選んで「ログイン」する方式だ
    もちろん他のメンバーとしてログインしてシステムを悪用することはできるが、開発者がユーザー層を理解したうえで、摩擦のない使いやすさのために選んだ妥協に見える。すっきりしている

    • コミュニティの日程調整には、when2meet[0]というかなりよいWebサイトをよく使ってきた。イベントを作ってURLを共有すると、ユーザーは名前を選べて、なりすまし防止用のパスワードも完全に任意で追加できる
      ここから多くの着想を得て、読書会が次の本を選ぶ「選挙」を開けるアプリを作っている。順位選択、賛成投票、スコア投票、最多得票制など、複数の投票方式に対応したいと思っている
      [0] https://www.when2meet.com/
    • kittysplit.comは、こうした機能構成を10年前から備えている。機会があるたびに宣伝しようと思っている
  • コスト削減の質問に答えるなら、単一のLinux VPSで動かせば月5〜10ドルまで下げられそうだ
    興味深いのは成長グラフが線形である点だ。アプリには明らかにある程度のtractionがあり、バイラル性もあるのに、なぜ指数関数的に増えないのだろう?

    • 私もまったく同じことを考えた。ntfy.shの管理者だが、オープンソースなのでDigitalOceanが100%支援してくれていて、現在のコストは0ドルだ
      実際には約100ドル程度のはずだが、正直かなり余裕を見すぎている。それでも私のトラフィックはブログで説明されているものよりはるかに大きい
      アーキテクチャを改善すればコストを下げられそうだ
    • 通常は指数成長ではない。たとえば https://longform.asmartbear.com/exponential-growth/ を見ると、「超高速成長」企業が指数関数的に成長したように見えるが、実際にはより二次関数的な成長に近い例が出ている
      記事の中ほどでは、この成長パターンによりよく合う別のモデルとしてロジスティック成長を提示している。初期の急成長のあと線形成長の区間が来て、最終的に「収容限界」または「市場飽和」に達して平坦になる
    • 同感だ。Vercelがどれだけ高く請求するのかを見て本当に驚いた
      似たようなアプリケーションをnetcupやHetznerのようなところで月3ドルでホスティングしているが、HNに載ったときも時間あたり1万リクエスト以上を簡単にさばけた
    • DigitalOceanで自分が試した最安は月22ドル程度だった。もっと安い代替があるなら聞きたい
  • 実際の数字とは関係なく、こういうプロジェクトがどうやって維持費をまかなっているのか、いつも気になる
    関心のあったアイデアの一つは、これを分散型の方式で処理することだ。プロジェクトに資金が入り、毎月の請求書を払えなければ死ぬ構造だ
    十分な余剰資金が入れば、適切な満期の米国債を買い、時間をかけてそれを取り崩していく方式も可能そうだ
    以前なら自動化が必要だっただろうが、近い将来には制限付きのAIエージェントがサーバーの役割を果たし、そのまま自分の仕事をさせておけるのではないかと思う

  • 使用量に応じて支払うモデルは、売上も使用量に応じて増えるときにはよい。自分のプロジェクトには、固定費が高くてもリスクがコストではなく可用性だけにある料金プランがあってほしい

    • その方式の欠点は、人や組織が全般的に将来の使用量を過大評価しがちなことだ
      そのため従量課金では収益が期待と合わないことが多く、段階制料金が市場からより多くのお金を回収しつつ、簡単に勝ってしまう
      例外的に、ファイルストレージのようなものは、人々が必要な容量を過小評価しがちだと感じる
  • spliitが本当に好きで、定期的に、週に何度も使っている
    困るのは、遅いモバイル回線では本当にうまく動かないことだ。ローカルファーストやオフラインファースト対応を追加してみたいが、大きな変更だということは分かっている
    それでも支出追加ページのようなページをキャッシュするだけでも、かなり改善しそうだ

  • アイデアはよいが、トラフィックの数値を見ると、月4ドルのDigitalOcean dropletでも同じ結果が出そうだ
    Vercelを使うことで1,000ドル以上を燃やしたことになる。自分が年を取ったせいなのか、この理屈がよく分からない
    基本的なVPSを一度設定すれば同じ結果になり、コストも中立的なはずで、自分の小さな無料アプリもそうやって動かしている
    おそらく筆者にとって月100ドルは大きな負担ではないか、利便性にそれだけ払ってもよい状況なのだろう

    • それほど多くアクセスされるデータベースを4ドルのDigitalOcean dropletで動かすって?かなり気になる
      Webホスティング費用は実質的にほとんどない。コストの大半はデータベースから来ている
  • 本当に素晴らしいアプリだ。費用の内訳を共有してくれてよかった
    銀行が正気に戻れば、この機能はACH/Zelle/FedNowを基盤にした銀行アプリの標準機能になっていたはずだ
    主催者が銀行アプリでグループを作り、異なる銀行口座を持つユーザーたちを招待できるべきだ
    支払いリクエストはワンクリックで処理され、もうCash Appや銀行口座、Venmoにお金が入ったかを手動で確認してから、サードパーティーアプリで支出をチェックする必要はなくなるべきだ

  • 必要なのは決済プロバイダー連携だ。ACHやクレジットカードで即時決済できるようにすればいい
    それ自体が収益化オプションにもなりうる

    • そういうアプリはすでに何十個もある。このアプリがその道を進む必要はないと思う
      オープンソースかつ無料を維持し、現金取引に便利なアプリであり続けるほうがよいと思う
    • それは単にマネーロンダリングを発明しただけだ
  • SupabaseNeonDBのようなサーバーレスデータベースソリューションを使えば、かなりお金を節約できそうだ