Purpose
Reconcile equity transaction activity across the cap table system, payroll, and the general ledger for a given period — matching every event, quantifying and classifying each variance, and producing an audit-ready package with a break log and proposed correcting entries. Solves the month/quarter-end problem where share counts, withholding, and GL balances silently drift out of agreement across three systems that were never designed to tie out to each other.
When to Use
Invoke this skill when the user asks to:
- Reconcile equity transactions across cap table, payroll, and GL for a close period
- Tie out RSU releases or option exercises between the equity system and payroll withholding
- Investigate a variance between shares outstanding in the cap table and the GL equity accounts
- Prepare equity reconciliation support for an audit, SOX walkthrough, or 10-Q/10-K tie-out
- Explain why proceeds, tax withholding, or share counts don't match after a vesting or exercise event
- Build a break log with root causes and corrective journal entries for an equity period
Inputs Required
Before starting, collect:
- Reconciliation period: Month, quarter, or date range being closed
- Cap table export: Transaction-level activity from the equity system (Shareworks, Carta, E*TRADE, Fidelity) — grant, exercise, release, vest, cancel, and forfeiture records with award type, quantity, FMV, and exercise/grant price
- Payroll data: Supplemental wage income and tax withholding recorded for equity events (RSU release income, ISO/NSO ordinary income, ESPP disqualifying disposition income), by employee and pay date
- General ledger detail: Journal entries and balances for the relevant equity accounts (common stock, APIC, stock comp expense, treasury, withholding/tax payable, cash from exercises)
- Chart of accounts mapping: Which GL accounts correspond to which equity activity types
- Award types in scope: RSUs, stock options (ISO/NSO), ESPP, RSAs, PSUs — and which are included
- Known exceptions: Any expected timing differences, off-cycle events, or manual adjustments already identified
If chart-of-accounts mapping is missing, apply standard equity account conventions and flag each mapped account as an assumption requiring confirmation. If payroll data is unavailable, reconcile cap table to GL only and note that withholding cannot be validated.
Instructions
Step 1: Normalize and Classify All Transactions
Standardize the three sources into a common transaction grammar before matching.
- Assign each record an event type: Grant, Vest/Release, Exercise, Cancellation, Forfeiture, Repurchase, ESPP Purchase, Dividend Equivalent
- Assign a matching key per employee + award ID + event date (or the closest available combination)
- Convert all quantities to shares and all amounts to functional currency
- Flag records that cannot be classified — unclassified records are automatic breaks, not skipped items
Step 2: Cap Table ↔ GL Reconciliation (Share and Dollar)
Tie equity system activity to the general ledger.
- Share count roll-forward: Beginning outstanding + grants/releases − cancellations − repurchases = ending outstanding; confirm against GL common stock share count
- Dollar tie-out: For each event type, confirm the cap table value flows to the correct GL accounts (common stock par, APIC, cash from exercise proceeds, treasury)
- Stock comp expense: Confirm period expense recognized in GL agrees to the equity system's expense report for the same population
- Compute variance = GL − Cap Table for every account and every event type
Step 3: Cap Table ↔ Payroll Reconciliation (Income and Withholding)
Tie taxable events to payroll.
- Income tie-out: For each RSU release, NSO exercise, and ESPP disqualifying disposition, confirm ordinary income = (shares × FMV) − exercise price, and that payroll recorded the same figure
- Withholding tie-out: Confirm federal supplemental, FICA (Social Security to wage base + Medicare + additional Medicare), state, and local withholding were taken on the recorded income
- Sell-to-cover / net share settlement: Confirm shares withheld for taxes reconcile to the cash remitted for withholding in both payroll and GL
- Flag any taxable event present in the cap table but absent from payroll (missing income inclusion — high severity)
Step 4: Variance Classification and Root Cause
For every break, assign one of these root-cause categories:
- Timing difference: Event recorded in different periods across systems (often self-clearing)
- Data entry / mapping error: Wrong account, wrong quantity, wrong FMV
- Missing transaction: Present in one system, absent in another
- Rounding / share-count precision: Fractional share and par rounding
- Rate / calculation error: Withholding rate, FMV source, or expense amortization discrepancy
- Duplicate: Same event recorded twice Assign a severity: High (affects reported income, withholding, or shares outstanding), Medium (misclassification within equity accounts), Low (rounding, immaterial timing).
Step 5: Build the Break Log
Produce a line-per-break table with: Break ID, Employee/Award ID, Event type, System A value, System B value, Variance ($ and shares), Root-cause category, Severity, and Recommended action.
Step 6: Draft Corrective Journal Entries
For each break requiring a GL correction, propose the entry with account, debit/credit, amount, and a one-line rationale. Distinguish entries that correct the current period from those requiring a prior-period adjustment. Do not propose entries for self-clearing timing differences — note them as monitor items instead.
Step 7: Reconciliation Summary and Sign-Off
Summarize total shares and dollars reconciled, total variance identified, residual unexplained variance (should be zero or documented), count of breaks by severity, and a statement of whether the period ties out within materiality.
Output Format
- Structure: Audit-ready reconciliation package — narrative summary followed by tables
- Length: 900–1,400 words plus tables
- Format: Structured document with roll-forward tables, a break log table, and a journal entry table
- Sections: Reconciliation summary → Cap table ↔ GL tie-out → Cap table ↔ Payroll tie-out → Variance classification → Break log (table) → Corrective journal entries (table) → Sign-off statement
- Tone: Controllership — precise, conservative, audit-defensible; every number traceable to a source, every conclusion supported by the reconciliation
Quality Checklist
Before delivering output, verify:
- [ ] Share count roll-forward foots (beginning + additions − reductions = ending) and ties to the GL
- [ ] Every break in the log has a variance amount, a root-cause category, and a severity — no blanks
- [ ] Every High-severity break has either a proposed journal entry or a documented reason no entry is needed
- [ ] Income and withholding tie-outs reconcile to payroll for each taxable event, or the gap is logged as a break
- [ ] Residual unexplained variance is stated explicitly ($0 or a documented figure) — never left implied
- [ ] Proposed journal entries balance (total debits = total credits) and cite specific GL accounts
Notes
- The most common and highest-risk break is a taxable equity event in the cap table with no corresponding payroll income inclusion — always test for one-sided taxable events first
- Timing differences at period boundaries (event dated in one system's prior period) are the second most common; classify them separately so they don't inflate the true break count
- Net share settlement is a frequent source of confusion — the shares withheld are a non-cash transaction to the employee but a cash withholding remittance obligation to the company; reconcile the share side and the cash side independently
- If materiality thresholds are not provided, report all breaks and flag which would clear a typical quantitative materiality screen rather than suppressing small items silently
How to use this skill
This file is a Claude Code skill in Anthropic's standard format — markdown with YAML frontmatter at the top.
Installing in Claude Code:
~/.claude/skills/<folder-name>/SKILL.md— auto-loads in every session anywhere on your machine (recommended for skills you'll use across multiple projects)<your-project>/.claude/skills/<folder-name>/SKILL.md— auto-loads only when working in that project (recommended for project-specific skills)
Restart Claude Code or open a new session to register.
Using in Claude.ai, ChatGPT, Gemini, or other AI tools:
- Drag this file into a new chat, or copy and paste its contents
- Send your task or request as your next message — the AI will apply the skill where it fits
For Claude Code skill details: https://docs.anthropic.com/en/docs/claude-code/skills