Short answer: give every Vast.ai machine ID a site in a simple register. Pull earnings per machine for each payout period from the Vast.ai CLI or API, record each payout on the day the money lands, and add the machines up by site once a month. Vast.ai pays the account, so the per-machine and per-site view is a method you run yourself.

1. Why a per-machine ledger matters

A Vast.ai payout is one number for the whole account. If you run five machines in two places, that number does not tell you which machine carried the month, which one sat idle, or whether a site covers its power and rent. A per-machine ledger answers those questions. It also gives your accountant a clear trail from what each machine earned to the cash that arrived.

The ledger does not need to be complicated. You need three things: a register of machines and sites, the earnings of each machine for each period, and a record of each payout when it lands.

2. Where Vast.ai shows earnings and payouts

Vast.ai documents several places to read the numbers. Use the ones that fit how you work:

  • The Earnings page. Vast.ai's earning docs describe a Current Balance, Total Earnings, Total Rental Earnings for hosts, an earnings chart, a Payouts section with payout history for a date range and invoices to generate and download, and your Payout Account.
  • Payout History. The host payment docs say to go to Earnings, then Payout History, where you can filter by date range and download the history as CSV or PDF.
  • Earnings per machine from the CLI. vastai show earnings gets machine earning history reports. Its options include -s for the start date, -e for the end date and -m for a machine ID.
  • Earnings per machine from the API. The show earnings API returns totals, a per_machine list with gpu_earn, sto_earn, bwu_earn and bwd_earn for each machine_id, and a per_day list. You can filter it by date range or by machine.
  • Your machine IDs. vastai show machines lists the machines you host.

Earnings come in more than one line. GPU time, storage and bandwidth are paid separately, so keep them as separate columns. Vast.ai's hosting overview also notes that each rental contract locks in the pricing from when it started, so one machine can earn at more than one rate in the same week.

3. Tag each machine to a site

Make a machine register. One row per Vast.ai machine ID, with:

  • machine ID and a short name you use
  • site or location
  • GPU model and number of GPUs
  • date it started at that site
  • power meter or circuit, if you meter by site

Keep the rule simple: each machine belongs to one site at a time. When a machine moves, close its old row with an end date and start a new row. That keeps past months correct. The same register can carry cost and in-service date if you also keep a depreciation schedule, as in GPU server depreciation.

4. Record each payout when it lands

Vast.ai generates host invoices weekly on Fridays. An invoice starts as Pending and moves to Paid, generally the following Friday. Paid means Vast.ai has submitted the payout to Wise, PayPal or Stripe, not that the money has arrived. An invoice is only generated once the account has at least $20 and a valid payout method is connected. All of this is in the host payment docs.

So record two dates for each payout:

  1. From Payout History: the invoice date, the amount and its status.
  2. From Wise, PayPal or Stripe: the date the money landed, the amount that landed and the reference.

Then break the payout down by machine. Pull the per-machine earnings for the period behind that invoice, from the CLI or the API, and give each machine its share. If the per-machine total and the payout differ by a few cents of rounding, put the difference on one line marked unallocated rather than spreading it around. A larger gap usually means the period is off, so check the dates before you go on. For more on tying each payout to the cash, see how Vast.ai host payouts work, and how to match them.

5. A simple monthly per-site rollup

At month end, add the machines up by site using the register. Here is an illustrative example with made-up numbers, not real Vast.ai rates:

  • Site A, machines 1101 and 1102: GPU earnings $2,140, storage $85, bandwidth $30. Total $2,255.
  • Site B, machine 2201: GPU earnings $610, storage $20, bandwidth $5. Total $635.
  • All machines: $2,890 earned in the month.
  • Payouts that landed in the month: $2,710.
  • Earned but not yet landed: $180, which should arrive with a later payout.

Keep the earned figure and the landed figure apart. Earnings tell you how each site performed. Landed payouts tell you what cash arrived. Agree with your accountant which one you count as income, and when, so the same money is not counted twice. If you subtract each site's power and rent from its earnings, you have a first view of profit by site.

Check three things before you close the month: every machine ID in the earnings data is in the register, every payout that landed has a date and reference, and the earned but not yet landed figure carries into next month.

Doing it with Flash

Flash is the CFO layer for compute operators, covering Bitcoin miners and GPU and AI compute hosts. The Vast.ai connection is in early access. Flash lists each payout Vast.ai reports. When the money lands, confirm it with the date and reference, and Flash keeps it in your audit history. If you've imported the receipt, Flash suggests the match by reference and amount.

Flash lists Vast.ai payouts per connected Vast.ai account. The machine register and the per-site rollup above are a method you keep yourself. For the records to keep at tax time, see GPU rental income and taxes. Separately from payouts, Flash brings earnings, site costs and hardware depreciation into a monthly close with profit by site and machine group, as described on Flash for GPU operators. To try the Vast.ai connection, request early access.

Questions

Can I see Vast.ai earnings for a single machine?

Yes. The vastai show earnings command takes a machine ID with -m and a start and end date with -s and -e. The earnings API returns a per-machine list with GPU, storage and bandwidth earnings for each machine ID.

Where do I find my Vast.ai payout history?

Vast.ai's host payment docs point to Earnings, then Payout History. You can filter by date range and download the history as CSV or PDF.

Does Vast.ai pay out each machine separately?

Vast.ai's docs describe payouts at the account level. Invoices are generated weekly on Fridays once the account balance reaches at least $20 and a valid payout method is connected, so one payout usually covers every machine on the account. To see what each machine contributed, use the per-machine earnings for the same period.

How do I group Vast.ai machines by site?

Keep a machine register that maps each Vast.ai machine ID to a site or location, with the date it started there. When a machine moves, add a new line with the move date instead of overwriting the old one.

When should I record a Vast.ai payout?

Record it when the money lands with Wise, PayPal or Stripe, with the date and reference. Vast.ai marks an invoice Paid when it has submitted the payout to your provider, which is not the same as the money arriving.

What does Flash do with Vast.ai payouts?

The Vast.ai connection is in early access. Flash lists each payout Vast.ai reports. When the money lands, confirm it with the date and reference, and Flash keeps it in your audit history. If you've imported the receipt, Flash suggests the match by reference and amount.


General information, not accounting or tax advice. Flash is the CFO layer for compute operators: Bitcoin miners and GPU hosts. See Flash for GPU operators.