Why Accuracy Has Always Been Hard
Credit card spending is deceptively hard to measure accurately in real time. Your raw balance includes charges that haven't posted yet, payments that are in flight, and large one-time expenses that have nothing to do with your normal monthly habits. If you're trying to answer a simple question — “am I on pace this month?” — the numbers your bank shows you are almost never the right ones to use.
On top of that, every billing cycle is different. You might have an unusually large purchase one month that skews your average. Your spending tends to cluster toward the end of the month. A new subscription started mid-cycle changes your baseline. Traditional projections that assume a flat daily spend rate get these cases wrong consistently — and over time, the errors compound into misleading end-of-cycle estimates.
The release you're seeing today addresses all of it.
Change 1 of 3
Per-Card Spending Goals and a Clearer Home Screen
Previously, CardTotal showed one aggregate goal across all your cards. That worked well if you think of your credit card spending as a single monthly number — but a lot of users have one card they put everything on, and a second card they use only for travel or a specific category. A single goal blurs those distinctions.
You can now set an individual spending limit per card. The home dashboard shows your overall TruBalance at the top, and below it a Spending Progress card that reflects your total goal — but each card in your account list now has its own target. If you go over on one card but stay under on another, you'll see exactly where the overage is coming from rather than getting a single blended number that obscures the detail.
CARDTOTAL TRUBALANCE
$1,847.33
Effective spend $3,112.50 minus pending payments, minus $1,265.17 in planned expenses
Last updated today at 7:33 AM
Spending Progress
Daily Pacing
Max Monthly Spend Goal: $4,000.00
Expected Spend / $1,548.39
46.2% of total goal
The home dashboard — TruBalance with full derivation shown, Spending Progress with daily pacing, projected close, and progress bar. Green bar means under budget; projected close of $3,890 comfortably under the $4,000 goal.
The projected close figure is one of the most useful numbers on this screen. At any point during the month, CardTotal estimates what your balance will be when your statement closes if you continue spending at your current daily rate. On day 12 of a 31-day cycle, with $1,847 spent, the projection of $3,890 tells you that you're slightly ahead of pace but still comfortably under the $4,000 goal.
What changed in this release is that the projection model now incorporates your actual spending shape from previous cycles — not just a flat daily rate. The result is a more accurate estimate earlier in the month, when a flat-rate projection tends to be least reliable.
Change 2 of 3
Planned Expenses Now Persist — and Link to Payments
Planned expenses have always been the mechanism for fencing off a charge you don't want counted against your monthly spending goal — an annual fee, a large purchase funded from savings, a reimbursable work expense. You mark it as planned, and CardTotal subtracts it from your TruBalance so it doesn't inflate your perceived spend.
The previous implementation had one significant limitation: planned expenses didn't survive a balance refresh. When Plaid updated your balance, the app had no way to know which portion of the new balance included the planned charge, so the exclusion would silently disappear. Users who noticed would re-enter the expense; users who didn't would see their TruBalance mysteriously increase.
That's fixed. Planned expenses now persist at the card level and survive every balance refresh until you explicitly remove them or link them to a payment. When a pending payment comes in that matches the planned amount, CardTotal will prompt you to link them — confirming that the charge has been addressed and clearing both the planned expense and the payment from your balance derivation simultaneously.
Chase Sapphire Reserve
(...4821) · Real-time
✏️ Travel Card
Balance
$843.17
Limit
$10,000
Available
$9,157
Card TruBalance
Planned expenses on this card
Annual fee (rewards card)
$350.00 · Added Apr 1, 2026
Total: $350.00 excluded from TruBalance
+ set spending limit
Billing cycle · Est. closes Apr 22
✏️ Statement closed
Mar 22
▶ Pending Payments (1)
Card Accounts — the Card TruBalance breakdown shows exactly how your balance becomes your true spend: raw balance minus pending payments, minus any planned expenses you've logged. The annual fee is fenced off and won't inflate your monthly spending picture.
For most users, this change will be invisible — things will just work the way they always should have. For users who previously had to re-enter planned expenses after every balance refresh, the difference will be immediately noticeable. Your exclusions now stay put until you say otherwise.
Change 3 of 3
A Spending Delta Ledger — and an App That Learns Over Time
This is the deepest change in the release, and the one that will have the most visible impact as you continue to use CardTotal over time. The core idea is simple: rather than treating every balance update as an isolated event, CardTotal now maintains a ledger of the delta between each observation — the change in your balance from one refresh to the next.
Over successive billing cycles, this delta history becomes a model of your actual spending behavior. CardTotal uses it in three specific ways.
Outlier Detection
When a single delta is unusually large — a $600 appliance repair, a hotel pre-authorization, a one-time annual membership — CardTotal now flags it as an outlier rather than treating it as representative of your normal spending pace. Outlier charges are still counted in your balance and your TruBalance, but they're excluded from the pace calculation that drives the daily budget and end-of-cycle projection.
The outlier threshold is derived from your history: it starts at approximately 11% of your monthly goal in the first cycle, then adjusts based on what CardTotal learns about your typical charge size. You can also set it manually in the Goal Form if you want precise control. The result is a daily pace metric that doesn't spike wildly every time you make an unusually large purchase.
Cycle-Shape Projection
Most people don't spend at a flat daily rate. Spending tends to cluster: higher at the start of the month when recurring subscriptions hit, lower in the middle, heavier toward the end when expenses accumulate. A projection that assumes constant daily spend will systematically underestimate your close balance in the first week and overestimate it in the last.
The new cycle-shape model looks at where in the month large deltas have historically occurred and weights the projection accordingly. In the first cycle, the projection is flat — there's no history to use. By cycle three, CardTotal has enough data to produce a meaningfully better estimate. By cycle six, the shape of your spending is well-characterized, and the projection is significantly more accurate than the flat-rate baseline.
Max Monthly Spend Goal
Set your monthly budget and when it resets
Monthly Spend Limit ($)
Reset Day of Month
Outlier Threshold ($)
Suggested: $420.00 — based on your spending history
Sapphire Reserve
15th
closes monthly
from bankVenture X
16th
closes monthly
you enteredBilt Rewards
19th
latest close
you enteredClean start. Your budget resets the day after Bilt Rewards closes — every statement has settled before the new cycle begins.
The updated Goal Form — your cards' statement close dates are shown as tappable tiles. CardTotal identifies which card closes latest and suggests a reset day that gives you a clean start every month. The Outlier Threshold is suggested from your history and editable.
The Carryover Fix
One subtle but important fix is in how CardTotal handles the transition between billing cycles. Previously, if your statement closed with a remaining balance that hadn't been paid yet, that amount could bleed into the new cycle's calculation and make your early-cycle pace look artificially high. The delta ledger tracks statement close snapshots explicitly, so the carryover amount is isolated and never counts against the new cycle's fresh start.
The More You Use It, the More Accurate It Gets
Every change in this release is designed to compound over time. Day one is the baseline — the app works, but it doesn't know you yet. It knows your goal, your cards, and when your cycle resets. That's enough to give you a useful picture, but the projections will be conservative and the outlier threshold will be generic.
By month two, CardTotal has one full cycle of delta history to work with. The cycle-shape projection starts incorporating your actual spending pattern. The outlier threshold is calibrated to your typical charge sizes rather than a generic default. The daily budget calculation excludes noise that would otherwise make it swing unpredictably.
By month six, the model has enough history to be meaningfully more accurate than any flat-rate projection. It knows when in the month you tend to spend heavily. It knows which transactions are anomalies and which are part of your normal pattern. The result is a projected close figure that you can actually trust — not just a rough estimate that's as likely to be off by $400 as by $40.
This is the core reason we've described today's release as an accuracy update rather than a feature update. The features — per-card goals, persistent planned expenses, the delta ledger — are the mechanism. The outcome is an app that earns more of your trust the longer you use it.
One Thing You Can Do Right Now: Set Your Statement Close Dates
If there's one action that will immediately improve the accuracy of CardTotal's projections for your account, it's entering your statement close dates for each card. Some of these are pulled automatically via Plaid if your bank supports the Liabilities API — you'll see them labeled “from bank” in the Goal Form. Others need to be entered manually, typically because your bank doesn't expose this data through Plaid.
Once CardTotal knows when each card closes, it can do several things it couldn't do before:
- Show accurate estimated close dates on each card tile
- Identify which card closes latest and suggest a reset day that ensures all statements have settled before your new cycle begins
- Weight the cycle-shape projection to account for mid-cycle statement closings on individual cards
- Alert you if your reset day is set earlier than your latest close date, which would cause the new cycle to start before all balances have rolled over
Many banks let you change your statement close date. Capital One, Chase, Citi, Bank of America, and American Express all offer this through their online banking or mobile app — look for “Manage account,” “Statement settings,” or call the number on the back of your card. Consolidating your close dates to be close together makes tracking significantly cleaner and projections significantly more accurate.
Even if you can't or don't want to change your close dates, entering them into CardTotal is worth doing. It takes about two minutes per card, and the improvement in projection accuracy is immediate. The Goal Form in the app shows you exactly which cards are missing this information and gives you a quick way to enter it.
The Honest Trade-Offs
Month one is the baseline. The outlier threshold starts at approximately 11% of your goal, which is a reasonable default but not personalized to your history. The cycle-shape projection is flat in the first cycle. The daily budget is calculated from a straight-line extrapolation. None of this is wrong — it's just not yet informed by what CardTotal will learn about you over time. If your first month's projection feels slightly off, that's expected. It improves naturally.
Statement close dates require setup for some cards. Plaid pulls these automatically for cards whose banks support the Liabilities API, but not all banks do. For the others, you'll need to enter the date manually. We know that's friction, and we wish the banks made this easier. The manual entry gives you the most accurate picture — more accurate than an estimate — and it only needs to be done once per card.
Plaid connections established before the Liabilities API was added may need a one-time re-link. When this release went out, some older connections were missing the permissions needed to pull close dates and payment data automatically. If you see a card labeled “legacy connection” or if your close dates aren't pulling in from a bank that should support it, re-linking the account through the app will fix it. It's a one-time step and your history is preserved.
What's Coming Next
The projection model will continue to improve as we accumulate more cycle data across the user base and refine the shape-weighting algorithm. The current version is effective but relatively simple; future iterations will handle edge cases like irregular billing cycles, cards with varying close dates, and multi-card households with significantly different spending patterns.
On the UX side, our next focus is clearer recovery flows for expired bank connections. Plaid connections expire, and when they do the current experience requires more steps than it should to restore them. We're redesigning that flow to make re-linking faster and less disruptive — ideally a single tap from the card tile rather than navigating into settings. If you have questions about how any of this works in your account, or if something looks off after the update, reach out at support@cardtotal.net. We read every email.