Skip to content

Who you work with

We keep the books for DeFi funds and institutions managing hundreds of millions of dollars, and we’ve run a DeFi fund ourselves. You get the same team.

  • Illustrated portrait of Ivan ZhangIvan ZhangEx-DRW and Bank of America
  • Illustrated portrait of Marc HomsyMarc HomsyEx-McKinsey and Uber, Harvard MBA

Our team prepares and reconciles your reports. Your CPA makes the final tax decisions, and we answer their questions.

“If you're serious about managing your crypto finances, PennyWorks are the one you want in your corner.”
Dr. Tripp StewartIndividual investor

Why accuracy matters

Accurate records stop you paying more tax than you owe.

Exchanges only report what happened on their platform, and DeFi protocols report nothing. In DeFi your tax bill is only as good as your records, and these are the gaps we see most.

  • 01

    Coins moved to an exchange show no cost basis.

    An exchange’s 1099-DA only knows what you bought there. Coins you moved in from your own wallet arrive with no purchase price.

    Example: 10 ETH bought at $3,000 in your wallet, sold on an exchange for $40,000. Without the basis you’re taxed on $40,000, not $10,000.

  • 02

    Loans that look like income.

    Borrowing isn’t taxable. But a borrow routed through a router or bundler contract can look like money arriving from nowhere.

    Example: a $35,000 USDC borrow read as income. See how we handle it below.

  • 03

    Rewards taxed twice.

    Staking and lending rewards are taxed as income when you receive them, and that value becomes their cost basis. Lose it, and you pay again when you sell.

    Example: $40,000 of rewards sold for $50,000. With the basis, $10,000 is taxable; without it, $50,000.

One example, step by step

A $35,000 borrow that looked like income.

  1. What a tool seesUSDC arriving from an unfamiliar contract. Read as a payment, it’s income, taxed at up to 37%.
  2. What we checkThe contract call underneath: a borrow from Euler, sent through a bundler contract.
  3. What goes in your reportA loan, which isn’t taxable, with a note showing how we identified it.

Where the IRS hasn’t ruled, as with vaults, wrapped tokens and liquid staking, we write down the options and the numbers for each, so your CPA can decide.

What you receive

A report your CPA can work from, and you can check.

Here is a sample for Alex, an illustrative investor running a delta-neutral yield strategy across 10 protocols. All figures are invented for illustration; tax year 2025.

Every wallet and exchange in one place

Opening balance
$1,850,000
Deposits
+$150,000
Withdrawals
−$60,000
Income
+$27,400
Fees and loan interest
−$16,200
Realized gains, net
+$39,600
Change in unrealized gains
+$9,200
Closing balance
$2,000,000

Consolidated across 5 wallets and 2 exchanges

Gains and income, by token

TokenShort-termLong-termIncome
ETH−38,000+85,0006,200
SOL−40,000+10,0004,100
USDC——14,800
USDe+22,600——
MORPHO——2,300
Total, USD−55,400+95,00027,400

Your CPA uses this summary for Form 8949 and Schedule D

Every number traced to a transaction

Borrow 35,000 USDC on Euler12 Aug 2025 · Ethereum

What Alex did: borrowed against collateral · Underlying: USDC

Euler loan
USDC −35,000
Wallet
USDC +35,000

0x8f3c…a21e · view on Etherscan

Trace each figure back to the transaction onchain

Treatment decisions, written down

  • Lido stake, 25 ETHDocumented as not a sale; basis carried into wstETH. Alternative treatment shown. CPA to confirm.
  • Euler borrow, $35,000Loan, not income. Identified from the contract call.
  • Cost basis methodTracked wallet by wallet, as the IRS requires. First-in, first-out where no lots were chosen at the time of sale.
  • Hyperliquid hedge$38,000 loss recorded as short-term when the position closed. CPA to confirm.

Your CPA sees every assumption and can change it

Explore the full sample report Alex's 2025

How Alex's money moves

Earn yield on ETH, borrow against it, and hedge the price so the portfolio doesn't swing with the market. 10 protocols, 4 chains, about 6,800 transactions in the year.

  • Earn on ETHETHLidowstETHAave V3collateral
  • Borrow and deployAave V3EulerUSDCMorphoPendle
  • Hedge ETH priceUSDCHyperliquidshort ETH
  • Stablecoin yieldUSDeEthenasUSDe
  • Earn on SOLSOLJitojitoSOLKamino
  • Provide liquidityETHUSDCUniswap V3LP position

Pick a transaction to see how we record it

Stake 25 ETH with Lido

Journal · 14 Jan 2025

What Alex didEarn staking yield on ETH
Underlying assetETH
AccountAssetQuantityUSD
WalletETH−25.00−100,000
Lido positionwstETH+20.66+100,000
Network feesETH+0.0021+8.40

How it's treated: The IRS hasn’t said whether this is a sale. We record the wstETH against the ETH underneath, show both treatments and document the one Alex’s CPA chooses.

Post wstETH as collateral on Aave V3

Journal · 3 Feb 2025

What Alex didPost collateral to borrow against
Underlying assetETH
AccountAssetQuantityUSD
WalletwstETH−82.65−400,000
Aave V3 positionwstETH+82.65+400,000
Network feesETH+0.0031+12.40

How it's treated: Alex still owns the wstETH. Recorded as the same asset moving into Aave, with the treatment noted for the CPA.

Borrow 300,000 USDC on Aave V3

Journal · 3 Feb 2025

What Alex didBorrow against wstETH to fund the strategy
Underlying assetUSDC
AccountAssetQuantityUSD
Aave V3 loanUSDC−300,000−300,000
WalletUSDC+300,000+300,000
Network feesETH+0.0029+11.60

How it's treated: A loan, not income. Nothing is taxable when Alex borrows; interest paid is tracked separately.

Borrow 35,000 USDC on Euler

Journal · 12 Aug 2025

What Alex didBorrow against collateral
Underlying assetUSDC
AccountAssetQuantityUSD
Euler loanUSDC−35,000−35,000
WalletUSDC+35,000+35,000
Network feesETH+0.0018+7.20

How it's treated: Routed through a bundler, the USDC arrived from an unfamiliar contract. We traced the call to Euler’s borrow function and recorded a loan, not income.

Deposit 120,000 USDC in Morpho

Journal · 4 Feb 2025

What Alex didEarn lending yield on borrowed USDC
Underlying assetUSDC
AccountAssetQuantityUSD
WalletUSDC−120,000−120,000
Morpho vaultUSDC+120,000+120,000
Network feesETH+0.00004+0.16

How it's treated: The deposit isn’t a gain. Interest earned in the vault is recorded as income.

Short ETH on Hyperliquid

Journal · 4 Feb 2025

What Alex didHedge the ETH price so the strategy stays neutral
Underlying assetETH
AccountAssetQuantityUSD
WalletUSDC−150,000−150,000
Hyperliquid marginUSDC+150,000+150,000
Short positionETH-PERP−125.00Open

How it's treated: Moving margin isn’t taxable. Profit or loss on the hedge is recorded when the position closes; the treatment is noted for the CPA.

Buy Pendle PT with 100,000 USDe

Journal · 2 May 2025

What Alex didLock a fixed yield until December
Underlying assetUSDe
AccountAssetQuantityUSD
WalletUSDe−100,000−100,000
WalletPT-sUSDe Dec 2025+104,400+100,000
Network feesETH+0.0026+10.40

How it's treated: Recorded as a swap. The PT starts a new cost basis at $100,000, and its fixed yield is realized at maturity.

Full summary by token

TokenHeld asShort-termLong-termIncomeUnrealized, not taxed
ETHwstETH, Uniswap V3 LP, short hedge−38,000+85,0006,200+62,000
SOLjitoSOL on Kamino−40,000+10,0004,100−8,000
USDCMorpho vault——14,800—
USDesUSDe, Pendle PT+22,600———
MORPHOReward tokens——2,300−600
Total, USD−55,400+95,00027,400+53,400

How it works

From a 15-minute call to finished reports.

Most of the work is ours. Expect a few follow-up questions if older records are incomplete.

  1. 01

    Book a free 15-minute call

    We go through your wallets, chains and exchanges, the records we’ll need, timing and price, and whether we’re a fit.

  2. 02

    Confirm scope and pay

    You get a written engagement setting out what’s covered. Pay by bank transfer or in USDC.

  3. 03

    Share your records securely

    Wallet addresses, read-only exchange access and any history we ask for. If cost basis is missing for older coins, we’ll follow up with questions.

  4. 04

    Receive your reports

    About two weeks after we have your complete records. Review them, pass them to your CPA, and we answer their questions.

Price and scope

One flat price per tax year.

No per-wallet fees and no transaction cap.

We already cover dozens of chains. Because we commit to delivering your full books, we aren’t limited to a fixed list: we cover the chains and protocols you’re active on.

Tax-year reporting

$3,000USD flat

Included

  • Every transaction across the wallets, DEXs and exchanges we support, with no transaction cap
  • Reconciliation of balances across all your accounts
  • Form 8949, Schedule D and an income summary
  • Written treatment decisions for your CPA
  • Answers to your CPA’s questions on anything in your books, typically within 24 hours

Not included

  • Filing your tax return (your CPA files)
  • Earlier tax years (book a call for a quote)
Book a free 15-minute call

Software or a team

Tax software gives you a tool. We do the work.

Do-it-yourself tax software

  • You import every wallet and exchange yourself.
  • You label the transactions it can’t recognize.
  • You track down missing cost basis.
  • You explain the numbers to your CPA.

PennyWorks

  • You share addresses and read-only access.
  • Our team reconciles every transaction.
  • We trace cost basis across your wallets.
  • We document every treatment and answer your CPA.

Your team

The people who work on your tax year.

We keep the books for DeFi funds and institutions managing hundreds of millions of dollars. You get the same team and the same standard.

  • DeFi native

    We’ve run a DeFi fund ourselves

    We know what a looped position, a vault share or a Pendle PT really is, because we’ve held them. In crypto since 2012.

  • TradFi rigor

    We know what compliance looks like

    Our team managed Bank of America’s $500B Treasury portfolio and advised financial institutions at McKinsey.

  • One standard

    Fund-grade books for your portfolio

    Every number reconciles to the chain and every treatment is documented, the way an auditor expects.

Illustrated portrait of Ivan Zhang

Ivan Zhang

Former Head of Delta Execution for FICC options at DRW and senior portfolio manager on Bank of America’s $500B Treasury portfolio. In crypto since 2012.

Team background

  • DRW
  • Bank of America
  • Georgia Institute of Technology
Illustrated portrait of Marc Homsy

Marc Homsy

Former Associate Partner at McKinsey, advising heads of state and financial services CEOs. Early launcher at Uber, founder of Mersive and a Harvard MBA.

Team background

  • Uber
  • McKinsey & Company
  • Harvard Business School

Questions.

The service

Who is this for?

US taxpayers with meaningful onchain activity: DeFi lending, staking, liquidity pools, bridges, or many wallets and exchanges. If your crypto is a few trades on one exchange, self-serve software is probably enough.

What happens on the call?

A free, 15-minute call to go through your chains, protocols and exchanges, the records we’ll need, timing and price, and whether we’re the right fit. No commitment.

What exactly do I get?

Your reconciled books for the tax year, Form 8949, Schedule D and an income summary, plus a written record of every tax treatment so your CPA can check it.

How long does it take?

About two weeks after we have your complete records. If older cost basis is missing, we’ll ask follow-up questions first.

Is there really no transaction limit?

Yes. One flat $3,000 per tax year covers every transaction across the wallets, DEXs and exchanges we support. We confirm coverage on the call before you pay.

How do I pay?

By bank transfer or in USDC, after you’ve confirmed the written scope.

Can you do earlier years?

Yes. Book a call and we’ll quote for the years you need.

Your data

What do I need to send you?

Your public wallet addresses and read-only API keys for your exchanges. For an exchange without an API, a CSV export works. For coins bought long ago, we may ask what you paid.

Is my data safe?

We only need public addresses and read-only access, never private keys, seed phrases, or trading or withdrawal rights. Reports arrive through a secure file drop or shared drive, and we delete your data on request.

Which chains, DEXs and exchanges do you cover?

We already cover dozens of chains. Because we commit to delivering your full books, we aren’t limited to a fixed list: we cover the chains and protocols you’re active on.

Your taxes

My exchange sent me a 1099-DA. Isn’t that enough?

Usually not. Exchanges report cost basis only for coins bought in that same account, so coins moved in from your own wallet can show none, and DeFi activity has no tax form at all.

Will this lower my tax bill?

Accurate records stop you paying more than you owe: missing cost basis, loans read as income, rewards taxed twice. We report what happened accurately; we don’t promise a lower bill.

Can you choose which coins I sold to lower my gains?

Not after the fact. The IRS requires you to identify which coins you’re selling at or before the sale. Where you didn’t, the earliest coins bought in that wallet are treated as sold first. We apply whatever identifications you recorded at the time.

How do you handle DeFi: lending, liquidity pools, vaults, liquid staking?

We record each position against the asset underneath, with its own cost basis. Where the IRS hasn’t ruled, as with vaults, wrapped tokens and liquid staking, we set out the options and the numbers so your CPA can decide.

Do you file my tax return?

No. We prepare your digital asset reports and your CPA files your return.

Do you work with my CPA?

Yes. Reports are built for a CPA to use, every treatment is written down, and we answer their questions, typically within 24 hours.

Do you give tax advice?

No. We prepare accurate records and reports. Decisions on unsettled questions are made by you and your tax adviser.

What if questions come up after delivery?

We keep answering your CPA’s questions on anything in your books. You also keep a transaction-level record of how every number was calculated, linked to each transaction onchain.