← 退出

AA 分账计算器

多人聚餐旅行分账,自动算最简转账方案

参与分账的人
分账结果
总花费 200.00 元
人均应付 66.67 元
小刚小明66.67 元
小红小明16.67 元

关于AA 分账计算器

AA 分账计算器适合聚餐、旅行、合租这类「有人先垫钱、最后大家平摊」的场景。你填入每个人实际付了多少钱,它会算出总花费和人均应付,再给出一套转账笔数尽量少的结算方案,告诉你谁该转给谁、转多少。它只做「平均分摊」:不支持按人头加权、不支持每个人只分摊自己吃的那部分,也不会记录历史账单。

操作步骤

  1. 页面默认有三位成员(小明、小红、小刚)。把名字改成你们的真实称呼,在右侧的金额框里填这个人实际付了多少钱,没付过就填 0。
  2. 人数不够时,点击「添加一个人」,新成员默认叫「成员 N」,金额为 0。
  3. 要删除某个人,点击这一行右边的垃圾桶图标。人数只剩两人时该按钮会变灰,不能再删。
  4. 查看「分账结果」:「总花费」是所有人已付金额之和,「人均应付」是总花费除以人数。
  5. 下方列表按「付款人 → 收款人 金额」的格式列出需要完成的转账。如果大家刚好付得一样多,会显示「大家付的钱刚好平摊,不需要互相转账」。

计算示例

以下结果由工具同样的结算算法实际运行得出。三个人:小明垫付 150、小红垫付 50、小刚没付。总花费 200,人均 66.67。小明多付了 83.33,小红少付 16.67,小刚少付 66.67。工具给出的方案是两笔转账:小刚转给小明 66.67,小红转给小明 16.67。再看四个人的情况:A 付 90、B 付 30、C 和 D 都是 0,总共 120,人均 30,结果是 C 转 A 30.00、D 转 A 30.00;B 刚好付了人均的数额,不需要参与转账。

它是怎么算出转账方案的

先算出每个人的差额:实际付的钱减去人均应付。差额为正的人应该收钱,为负的人应该付钱。然后反复取出「差额最负」的人和「差额最正」的人,让前者转给后者,金额取两者绝对值中较小的一个,这样至少有一方会被结清;重复直到所有人的差额接近 0。每个人最终要么只收钱、要么只付钱,不会出现一个人既收又付的情况,通常能让转账笔数保持在较少的水平。

支持范围与已知限制

  • 只支持所有人平均分摊。如果有人吃得多、有人没参加某一项,需要先自己把费用拆开,或者分几次分别计算。
  • 金额框设置了 min=0,程序也会把负数按 0 处理,所以无法录入「退款」之类的负金额。
  • 金额框留空或填入无法识别的内容会按 0 处理。
  • 中文界面的结果单位写作人民币「元」,英文界面不显示币种;计算本身与币种无关。
  • 差额小于 0.01 的人会被视为已结清;结果按浮点数计算并显示到两位小数,个别情况下几笔转账相加可能与总额差一两分钱。
  • 至少要保留两位成员。名字允许重复,但重复时结果列表里会分不清谁是谁,请用不同的名字。
  • 不保存数据:刷新页面后成员和金额会回到默认示例。

每个人填的是应付的钱还是实际付出的钱?

填的是实际付出的钱,也就是谁掏了钱包。没有出过钱的人填 0,工具会自己算出他需要补多少。

这个方案保证转账笔数最少吗?

它每一步都结清至少一个人,所以笔数不会超过「有差额的人数减 1」,在大多数日常场景下很精简。但这是一种贪心做法,页面代码里的说明是尽量少,不是严格的数学证明,在特殊的复杂账目下可能存在更少笔数的方案。

有人只参加了一部分活动,能不平均吗?

目前不能。工具固定按人数均分。可以把费用拆成几次分别计算:全员参加的部分算一次,部分人参加的部分单独列一次,再各自按方案转账。

为什么结果里有的人没有出现?

因为他们的差额小于 0.01,也就是付的钱刚好等于人均份额,不需要转账。

隐私与处理方式

所有计算在你的浏览器中完成,输入的名字和金额不会发送到服务器,也不会被保存。因为刷新即清空,如果需要留底,请自己截图或复制结果。