── ── Tax & compliance

A Balance You Couldn't Read Can Only Push the Total Up. That's Why "No" Is the Hard Answer.

August 16, 2026 · 7 min read · By Brad Ju

On FBAR and Form 8938, the dangerous output isn't a wrong number — it's a conclusion the documents didn't support. Because an unreadable balance can only raise the aggregate, "you're over" survives incomplete data and "you're under" does not. That asymmetry decides what software is allowed to say, and where it has to stop.

Every tool in this category will tell you the FBAR threshold is $10,000 aggregate. That number is on an IRS page, and repeating it is worth nothing. The question that actually decides whether a foreign-asset workflow is safe to run is narrower and almost never asked out loud: who performed the comparison, and what were they allowed to assume when a document didn't say?

We split those two jobs. The model reads — it copies a balance off a statement and hands back the currency and the original wording alongside it. Code compares. That boundary exists because a threshold test is arithmetic, and arithmetic that a language model performs is arithmetic nobody can audit.

The asymmetry that decides everything

A missing account balance is not neutral. Whatever it turns out to be, adding it can only move the aggregate up — never down. That single fact splits the two possible conclusions apart and they are not equally hard to reach.

If the accounts we could value already exceed the threshold, the gaps are irrelevant: unreadable balances can only push it further over, so "this triggers a filing" is safe to state even from incomplete documents. If the accounts we could value fall under the threshold, one unreadable balance is enough to make "under" unprovable. So a yes survives missing data and a no does not. Any tool that returns both with the same confidence has not thought about this.

Four things the arithmetic is not allowed to assume

The assumptionWhat it costsWhat happens instead
A number in a USD field is USD50,000 HKD gets summed as $50,000 while the same account is also listed as unvaluable — the note and the number contradict each otherNon-USD balances are excluded from the sum and the account is named
Unreadable means zeroAn account nobody could value silently supports an "under the threshold" conclusionAny unvalued account blocks a "no" and the verdict drops to "depends"
A negative balance offsetsA margin statement reading "-5,000.00" pulls a $12,000 aggregate under $10,000Negatives are treated as unknown, not as a credit
Residency and filing status can be inferredThe Form 8938 band is picked for the wrong personNo band is selected at all until both are supplied

The currency one is the most instructive because it was a real regression, not a hypothetical. The field was named for dollars, so anything numeric got added. A Hong Kong account carrying a five-figure local balance landed in the aggregate at face value, and the same account was correctly listed under "could not be valued" in the handoff notes. The CPA reading that output got a number and an explanation that disagreed with each other, which is worse than either being missing.

The negative-balance one is the only false negative this code has ever produced. FBAR's maximum-value concept does not go below zero, but statements print overdrafts and margin positions with a minus sign, and a reader copying faithfully hands back exactly that. Summed, it quietly erased a genuine filing trigger.

Residency moves the threshold by four times, so it cannot be guessed

Form 8938 has two tests — a year-end figure and an any-time figure — and both bands depend on filing status and on whether the taxpayer lives outside the United States. For the same filing status the abroad band is four times the domestic one, and across all combinations the tests span $50,000 to $600,000.

A four-fold spread is not a detail to default. When either input is missing the honest output is that no test can be applied yet, stated together with what the documents did total, so the person reading it knows exactly which one answer would unlock the verdict.

Refusing to answer is also a failure

The opposite mistake is easier to miss because it looks like caution. An earlier version returned "depends" for every taxpayer whose peak balances fell under the any-time threshold, on the grounds that the year-end figure had not been established. It was technically defensible and operationally useless: every client displayed "needs year-end balances," so the handful who genuinely needed them were buried in the ones who didn't. A triage field that flags everything triages nothing.

The fix was a proof, not a policy. A year-end total cannot exceed the sum of each account's yearly peak. So when the peaks are already below the lower of the two thresholds, both tests are settled and the verdict can be stated. The band between the two thresholds is the only region where December balances actually change the answer — and that is now the only region that asks for them.

Hedging where the arithmetic is decided is not caution. It moves the work back onto the person you were supposed to be helping, and it hides the cases that were genuinely uncertain.

"None found" is not "none exist"

When no foreign accounts turn up in what was provided, the output says so in those words: that is not the same as there being none — it only means none appeared here. Every verdict carries the same boundary, including the ones that conclude cleanly. What was tested is the documents on the table, not the taxpayer's life.

None of this makes the filing decision. It computes which tests the supplied documents settle, names every account it could not value, and hands the rest to the person who signs. PFICs, foreign pensions, trusts and closely held foreign entities are flagged for review rather than filled in, because those are not threshold questions and no aggregate answers them.

How deciqAI handles it

Threshold verdicts are computed in code, not produced by a model: balances that are non-USD, negative, or unreadable are excluded from the aggregate and named individually; a verdict of "no" is blocked whenever any account went unvalued; and no Form 8938 band is chosen until filing status and residency are both supplied. Thresholds trace to 31 CFR 1010.350 / FinCEN Form 114 and IRC §6038D. Educational content — not tax advice.

FAQ

How do I know an AI tax tool isn't inventing my foreign account balances?

Ask which component performs the threshold comparison. If the same model that reads the statement also decides whether the threshold was crossed, the arithmetic is unauditable. A tool that separates them can name every account it could not value and show the sum it actually compared.

What should software do when it can't read a balance off a statement?

Exclude it from the aggregate, name the account, and refuse to conclude that the taxpayer is under the threshold. An unreadable balance can only raise the total, so it invalidates an "under" conclusion while leaving an "over" conclusion intact.

Should software ever tell me I don't need to file an FBAR?

Only when every account it found was valued and the total is below the threshold — and even then the claim covers the documents provided, not every account that exists. If anything went unvalued, the correct output is that the aggregate is not known.

What happens if my accounts are in a currency with no exchange rate available?

The balance should be excluded from the aggregate rather than summed at face value. Treating a foreign-currency figure as dollars produces a total that contradicts the tool's own list of accounts it could not value.

Why does Form 8938 need my residency before it can be tested?

The thresholds for a taxpayer living abroad are four times the domestic ones for the same filing status, and across all combinations the tests range from $50,000 to $600,000. A four-fold spread cannot be defaulted, so no band is selected until residency and filing status are both supplied.

Start free. Pay when it pays off.

Bring one file and see what the draft looks like. No card required to start.

Start free