Creating running totals in Airtable similar to Excel cumulative sum

Running Sum Formula in Airtable

I’m working on an Airtable base and trying to figure out how to create a cumulative sum column that works like Excel’s running total feature.

What I want to achieve is having each row show the sum of all values from the first row up to the current row. Here’s what I’m looking for:

Price     Running Total
5         5
3         8
7         15
2         17

Basically, each cell in the Running Total column should add up all the values above it plus its own corresponding value. In Excel this would be straightforward with formulas, but I can’t seem to find the right approach in Airtable.

Has anyone managed to implement this kind of progressive sum calculation? Any suggestions would be really helpful!

Airtable doesn’t facilitate running totals in the same way as Excel due to the absence of row-dependent calculations. One approach I’ve implemented is to create an autonumber field and then craft a formula that sums all records where the autonumber is less than or equal to the current record. However, be prepared for a complex formula. For example: SUM(IF({Autonumber}<=Autonumber,{Price},0)), but this requires modifications to suit Airtable’s syntax. Alternatively, I prefer using automation scripts to keep the running total updated whenever new records are added, which is more dependable for larger datasets.

totally feel ya! airtable’s cool, but for this kinda stuff, it gets messy quick. I usually just export to sheets for running totals too. it’s not ideal, but at least it does the job. hope you find a smoother way!

i totally get u! airtable can be tricky with this. u can try using a formula field to sum the previous totals, it might feel a little clunky but it should do the job! good luck!

Been there, done that on multiple projects. The trick is combining an autonumber field with a lookup field that references the same table.

First, set up an autonumber field to establish row order. Then create a lookup field that pulls all Price values where the autonumber is less than or equal to the current row’s autonumber. Finally, use SUM() on that lookup field.

I’ve used this for budget tracking and inventory management. Works great until you start reordering records - then your running totals get messed up.

For production systems, I always add a timestamp field and base the lookup on creation time instead of autonumber. Way more reliable when people move records around.

One gotcha: performance tanks with large datasets. Had a client with 5000+ records where each calculation took forever. Ended up moving the logic to a script that runs on record creation.

Had this same problem building a financial tracker last year. Here’s what worked: create a rollup field that grabs filtered records based on when they were created or some sequence number. First, you need a solid way to keep everything in order, then use the rollup to add up all the previous records plus the current one. Just make sure your records stay in chronological order. This approach works well, but you’ve got to plan your base structure upfront. It’ll slow down once you hit hundreds of records, but for most situations it handles running totals just fine without needing fancy scripts.