Tax Preparation
Reading K-1s With AI: Extract, Cite, Confirm
Jump to a section
Key takeaways
- Copy the client's K-1 folder and point an approved tool at the copy only.
- List every K-1 you expect, by issuer and recipient, before the tool opens anything.
- Require one row per printed item per page, with the label exactly as printed and issuer, recipient, and period on every row.
- Have each attached-statement item followed to its own page, and take "not found" instead of a guess.
- Open every cited page, search the copy yourself for each "not found" row, and check final, amended, or corrected marks.
- Mark each row confirmed, wrong, or question, and file the checked list with the workpaper.
Pull one K-1 packet apart and set the form page to one side. What's left can include attached statements, footnotes, a cover letter from the issuer, and a second K-1 marked amended. The item a Preparer needs may sit on any of those pages, while the form page only says "see attached statement."
Have an AI tool draft rows from copies of the packets: who issued each K-1, who received it, the period printed on it, and each printed item with its label and page. Then open the pages yourself, confirm every row, and decide what each item means.
Citation rows in general are the subject of the piece on AI citations in tax-prep workpapers. Here they're applied to K-1 packets: attached statements, footnotes, amended K-1s, and several K-1s from one issuer.
Before the pass
Work from copies. Anthropic's help article for Claude Cowork says: "On desktop, Claude can read from and write to your local files without manual uploads or downloads." That sentence is about the desktop app and your local files, and it says the tool can write to them as well as read them. So copy the client's K-1 folder, point the tool at the copy, and leave the originals as the issuers sent them. Use only a tool and setup the Firm has cleared for client data.
Write down every K-1 you expect for this client before the tool opens anything. Name each issuer and each recipient, since one client file can hold K-1s for a person, a spouse, and a trust. Build the list from the engagement notes, last period's final file, and the client's intake answers. To compare periods, put copies of each period's packets in separate folders labeled by period, then match packets by issuer and recipient. See the prior-year comparison post for background.
Run the tool on synthetic K-1 packets first, ones you built so you know every label and page. Include an attached statement, a footnote, and an amended K-1 in the synthetic Doe packet. Write the expected rows by hand using the rules below, run those instructions, and compare the output with your expected rows, including missing and extra rows. Resolve mismatches and repeat the synthetic test before using client copies. See where AI fails in tax prep for background.
On the client copy, have the tool list every file it opened, the issuer and recipient printed on each, and any page it couldn't read. Compare that list with the copy's file listing. Open any skipped or unreadable file yourself and draft its rows by hand.
Extract: the instruction
Give the tool these rules in writing:
- One row per printed item per page.
- Copy each label exactly as the issuer printed it. No paraphrase, no standard name in its place.
- Put the issuer, the recipient, and the period on every row, as printed on that K-1.
- Where an item points to an attached statement, find the statement page and add its items as their own rows. If no statement page turns up in the packet, write "statement not found" and cite the page that points to it.
- Don't sum, net, combine, or interpret anything.
- Write "not found" instead of a guess for any item, label, period, or page the pages don't settle.
- List separately any page or file you couldn't read.
Read the draft against those rules before you check a single figure. A row with a paraphrased label or a total the tool built goes back as wrong.
Cite every row
Require the file name and page on every row. An item taken from an attached statement cites the statement page, not the form page that sent the reader there. A footnote cites the page the footnote is printed on.
A "not found" row cites the page where the search started, such as the form page that says "see attached statement," and says what wasn't found. Start the hand check from that page.
Confirm by hand
Open each cited page and check the row against it. For every K-1, confirm:
- The recipient name matches the client, spouse, or trust the K-1 should belong to.
- The period printed on the K-1 matches the period on the row.
- Each label on the row matches the page word for word.
- Whether the K-1 is marked final, amended, or corrected. Record what the page shows.
For each "not found" row, search the copy yourself. Go through the file list and every page of that issuer's packet, cover letter included, before you accept that a statement or item is absent. If it's still missing, mark the row as a question for the issuer or the client.
Match several K-1s from one issuer by recipient and period. If two carry the same recipient and period and one is marked amended or corrected, record both files and both pages, and decide which one the file uses. Keep K-1s for different recipients in separate rows, even from the same issuer.
Then tick your expected list against what the tool found. An expected K-1 with no match in the copy becomes a question for the client or the issuer. A K-1 the list didn't expect gets a note and a question too.
Mark every row one of three ways:
- Confirmed: the cited page supports the row as written.
- Wrong: the label, recipient, period, or page differs from the cited page. Record what the page shows.
- Question: the issuer or the client must answer something first, including any item your own search of the copy couldn't find.
What stays with people
The Preparer decides what each item means and how it's used. The tool's rows are a draft of what the pages say, nothing more. The Firm sets its own procedures: whether to use a tool's pass at all, and which checks each row needs. The Reviewer concludes and signs off on the workpaper. For that side of the file, see for reviewers.
A Doe example
Jane Doe is a made-up client with K-1s from two made-up issuers, Doe Holdings and the Doe Family Trust. Alex Doe, the Preparer, checked these rows by hand. Recipient and period columns are cut for space:
Issuer | Item (described) | File and page | Status |
|---|---|---|---|
Doe Holdings | Recipient name and period at the top of the form | doe-holdings-k1.pdf, p. 1 | Confirmed |
Doe Holdings | Item marked "see attached statement" | doe-holdings-k1.pdf, p. 1 | Confirmed. Followed to the statement on p. 3 |
Doe Holdings | Footnote on the attached statement | doe-holdings-k1.pdf, p. 3 | Question for the issuer: the footnote names a schedule that isn't in the packet |
Doe Holdings | Second K-1, marked amended | doe-holdings-k1-amended.pdf, p. 1 | Confirmed. Original on doe-holdings-k1.pdf, p. 1 also recorded; Alex decides which one the file uses |
Doe Family Trust | Item marked "see attached statement" | doe-family-trust-k1.pdf, p. 2; statement not found | Searched every page by hand. Question for the client: request the full packet |
No status in the table says what an item means.
The K-1 checklist
- Copy the client's K-1 folder and point an approved tool at the copy only.
- Write the expected list: every issuer and every recipient.
- Run the tool on synthetic K-1 packets first.
- Have the tool list every file it opened and every page it couldn't read, and open the gaps yourself.
- Require one row per printed item per page, with the label exactly as printed and issuer, recipient, and period on every row.
- Have it follow each "see attached statement" item to its page, and write "statement not found" with the pointing page when it can't.
- Forbid sums, netting, interpretation, and guesses; take "not found" instead.
- Require file and page on every row, with statements and footnotes cited to their own pages.
- Open every cited page, search the copy yourself for each "not found" row, and check recipient, period, and final, amended, or corrected marks.
- Mark each row confirmed, wrong, or question, and file the checked list with the workpaper.
Where TracePrep fits
In TracePrep's Reasonable Compensation Study, every figure traces to its source, occupation, geography, and period, at field level. A Reviewer signs off on each Study, and the audit log records who prepared it, who changed what, and who approved it. Finalized evidence stays with the Firm.
This is general information, not tax or legal advice. Your licensed professional and your Firm's Reviewer are responsible for every return and every conclusion. Keep client data inside the systems your Firm has approved. As general guidance only, not advice: if you use an AI tool with client data, firms generally look for a business or commercial plan whose terms cover how that data is handled; read the vendor's current terms before you do.
Frequently asked questions
Why point the tool at a copy of the K-1 folder?
What should the Preparer do with a "statement not found" row?
How should two K-1s from the same issuer be handled?
Bobby Huang · founder of TracePrep Inc.
Bobby Huang is the founder of TracePrep Inc. TracePrep is a tax-prep platform for CPA, EA, and accounting firms, and it also produces the Reasonable Compensation Study.
Related reading
- Tax Preparation
Writing Instructions an AI Tool Can Follow on Tax Documents
Build an AI instruction for tax-document work from six checkable parts, change it one part at a time with a change log, and version and retire it on purpose.
Bobby Huang6 min read - Tax Preparation
From Client Folder to Entry List: An AI-Assisted Tax Prep Workflow
The full path from a client folder to an entry list the Reviewer can trace: what each step passes on, the gate before each hand-off, and what reopens.
Bobby Huang7 min read - Tax Preparation
ChatGPT for Tax Preparation: Chat, Work and Business Data
How a CPA or EA firm sets ChatGPT's Chat and Work modes per task, what goes in the folder it can modify, and which plans OpenAI's training default covers.
Bobby Huang7 min read