05/ But, as I said... there were some big misses. Esp this year.
The draft leaving off extension payments I'd already made, so it said I owed a lot when I was actually due a refund. Missing a ~$2.4K state refund and two gift tax returns I had to file. (Luckily, fixed all of these!)
01/ Over 20+ yrs I've paid 7 CPAs & products for my taxes. Last night I realized I had $200 in expiring Claude API credits, so I had Claude read every tax doc I'd saved since 2006.
820 PDFs & $137 later, I received 1) structured schema w/ 20 yrs of tax data and 2) 384 questions
@m0nle0z First pass had a lot of redundant questions (cascading issue from 5 yrs ago then hits every yr) or low stakes questions ($5 swing on something 10 yrs ago).
Changed it to have a second pass filter for being within audit windows and materiality, and collapse cascading issues.
@m0nle0z Thanks! I wasn't sure what to expect so I started one year at a time working backwards and had it keep a running log of the costs so it would stop before the credits expired. Was surprised when it finished and I had credits remaining.
@jayhp Exactly. Paying big bucks for professional services only to realize that we're all just guessing at how to interpret the tax code isn't exactly inspiring.. ๐
13/ cont...
C) And this is probably the most it will ever cost. All in, about $7 per year of all of my returns supporting docs at API prices, and it only gets cheaper from here.
Add a few dollars to fill in the tax returns themselves.
The ROI speaks for itself!
11/ As I've thought about this, I think a few things jump out:
A) A CPA's edge was information asymmetry. Clients either didn't have the time and/or the skill to check the work. I just checked 20 years of it for $137.
Value != moving numbers from a PDF to software.
12/ cont..
B) If you're a CPA and you'd rather start from a structured JSON of a client's full history than a folder of PDFs, I want to talk to you. You're the CPA of the future!
Taxes still run on people trying to push PDFs into software. That's nuts.
10/ Every remaining flag is now a spreadsheet row with a pointer to the exact PDF that raised the question. I fill in a column with my answer and run one command, and it updates my structured extract.
I've closed most of the open questions thankfully! A few hairy ones remain ๐ซ
08/ How it works:
- classify every file from its first few pages (~$10 for all 820)
- pull each year into one JSON: ~38k values in all, headline numbers mapped by meaning so 2006 and 2025 line up
- check every carryforward: does what left year N match what showed up in year N+1?
09/ Taxes are complicated, though. The model raised 87 flags that were "high" on the first pass, and later de-prioritized.
What fixed that was downloading all of my IRS transcripts. My record keeping was inexact, so they closed 84 flags without me answering anything.
06/ This chart surprised me. The flags didn't go down when I started paying CPAs. My finances got more complicated (a rental, angel investments, stock comp, more states, more countries) and the misses grew in lock step.
02/ Who were they? H&R Block, then TurboTax, then four CPAs. At every switch the new preparer got last year's return and a stack of PDFs. None of them looked further back than that (and I get it!!), and information was lost.
05/ But, as I said... there were some big misses. Esp this year.
The draft leaving off extension payments I'd already made, so it said I owed a lot when I was actually due a refund. Missing a ~$2.4K state refund and two gift tax returns I had to file. (Luckily, fixed all of these!)
04/ To be fair, most of the 20-yr misses were small. Expenses entered 2x. A daycare listed 2x under two names. Stuff like that. Nobody ripped me off, but there were *some* big misses.
I was paying for someone to keep the history straight, while they looked one year at a time.
03/ So things fell through the cracks... when CPA #2 took over, the accumulated depreciation on my rental went to $0. Every return since then has carried the wrong depreciation number, apparently. That's seven returns from three different CPAs, and none of them caught it.