What dollar-cost averaging actually does
You buy the same dollar amount on a schedule. $100 every payday, $50 every Monday, $500 on the first of the month. The price moves around, but your spend stays flat. When the asset is cheap your $100 buys more units. When it’s expensive, fewer. Over time those buys blend into one average cost, and that average tends to sit below the highest prices you paid.
This calculator takes your routine and turns it into the four numbers that matter: how much you’ve put in, how many units you hold, what they cost you on average, and whether you’re up or down today.
How to use it
Two inputs are always required: the amount you invest each period and the current price of the asset. After that, pick how you want to describe your buy prices.
Got a rough average in your head? Choose Average buy price, type the number of periods and that average. Fast, good enough for a back-of-the-envelope check. Want it exact? Switch to List of prices and paste the price at every buy, separated by commas, spaces, or new lines. The tool counts the entries, divides your fixed amount by each price, and sums the units. That’s the honest version, because real DCA almost never hits a clean average.
Here’s a quick one. Say you bought $100 worth at $180, $172, $195, and $210. You spent $400 and picked up about 2.14 units, so your cost basis lands near $186.92. If the price is $215 now, you’re holding roughly $460 worth and sitting on a 15% gain.
Why the average buy price beats the average price
People mix these up constantly. The average of the prices you saw is not the same as your average cost. Because each fixed buy grabs more units when the price is low, your dollars naturally pile up on the cheap periods. That pulls your real cost basis below the simple price average. It’s the whole point of DCA, and it’s why the list mode and the average mode can give you slightly different cost bases for what looks like the same data.
Blunt example: buy $100 at $10 and $100 at $20. The price average is $15. But you bought 10 units then 5 units, so your real cost basis is $200 / 15 = $13.33. Lower. That gap is the averaging effect working for you.
Good to know
A few things this calculator leaves out on purpose, so you read the result correctly:
- Fees and spreads. Ten $50 buys with a $1 fee each is $10 gone before the asset moves. For tiny recurring buys, fees quietly eat a real chunk.
- Taxes. Profit shown here is unrealized and pre-tax. Selling triggers capital gains in most places.
- Dividends and staking. If the asset pays you along the way, your true return beats the price-only figure here.
- Timing. DCA is a discipline, not a magic trick. It wins on volatility and on not having to guess the bottom.
Your numbers never leave the browser, so paste your real buy prices without thinking twice.
Common questions
Does this work for stocks, crypto, and ETFs? Yep. The math is identical for anything priced per unit. “Units” just means shares, coins, or fractional shares depending on what you’re buying.
Average mode or list mode, which should I use? List mode if you have the actual prices, since it’s exact. Average mode for a quick estimate when you only remember a ballpark figure.
What if I invested different amounts each period? This version assumes a fixed amount per buy, which is the standard DCA setup. For wildly uneven contributions you’d want a per-buy spreadsheet, since the cost basis math changes.
Why is my profit negative when I bought during a dip? Because the current price is still below your blended cost basis. Buying dips lowers your average, but you only show a gain once the price climbs back above that average.
Is dollar-cost averaging better than buying all at once? It depends on the path the price takes. Lump sum tends to win in a rising market; DCA shines when prices are choppy and when it keeps you investing instead of waiting on the sidelines.