Skip to main content

Accrual Accounting for DAOs

· 9 min read

Introduction

Although accrual accounting may be far down the road for most DAOs, it’s important for DAO accountants to start thinking about what their accrual-based books will look like in the future. Since blockchain transactions are inherently cash basis, accountants will play an essential role in the web3 world. It doesn’t matter if everything is on-chain - if it’s not up to US GAAP snuff, then an army of crypto accountants will be needed to satisfy the trad requirements. To dive more into the concept of accrual accounting for DAOs, Kevin Ngo and Mackenzie Patel will talk about their experience in DAOs and best practices for other DAOs looking to tighten up their books.

Mackenzie is the accountant for dOrg, a web3 development DAO, and is actively creating accrual books using a combination of crypto subledger tools and “traditional” tools like Quickbooks. She also works full-time as a senior revenue accountant at Figment, a Proof of Stake validator on over 60 chains, and handles all of the staking revenue.

Kevin is the strategic finance contributor for Polywrap, a DAO building WebAssembly-powered developer tools. In this role, he worked on accounting infrastructure and financial analysis such as cash flow forecasting and budgeting. Kevin has also contributed to FWB DAO and Llama, where he worked on financial reporting and analysis.

Cash vs. Accrual

On a fundamental level, cash accounting describes a business's transactions as they’re happening in real-time. Customer payments (inflows) for services will be considered income on the day of receipt, regardless of when the company actually performed the service. On the flipside, any cash outflows for expenses will be booked on the day the cash is sent out, no matter what time period the expense relates to. Cash accounting is a distilled and simplified view of business activity.

Accrual accounting is the method of accounting required under US GAAP, and it takes a more nuanced approach. Revenue is booked when it is earned, rather than when it is received. Revenue is considered earned when the company has finished any obligation it had to the customer. Similarly, expenses are booked when they are incurred, even if the company pays the bill weeks after consuming the good or service. Accrual accounting is meant to fill the gap between economic reality and simple cash flows. It’s generally thought of as more useful for decision-making than cash basis accounting.

In the crypto world, blockchain transactions are inherently cash-based. Practically, this affects web3 accountants since our most ubiquitous tools are block explorers, applications that allow you to examine all the transactional activity of a particular chain. Explorers such as Etherscan or Mintscan only show the movements from A to B in true cash basis fashion - any accruals that do relate to those transactions have to be calculated in an off-chain spreadsheet.

Benefits of Accrual Accounting

At its essence, accrual accounting paints a more accurate picture of a DAOs financials. Financials are difficult to interpret if you’re just analyzing pure cash inflows and outflows (basically looking only at Etherscan’s transactions). For example, if a DAO pays its contributors at quarter end, the last month will show large outflows (potentially negative cash flows) while the other months will appear positive. However, the obligation to pay contributors is incurred throughout the quarter and should be reflected as a wages expense in all three months.

Accruals smooth the books and lead to better trend analysis and decision making. They also help with point-in-time information such as “how much do our customers owe us?” (accounts receivable) and “how much do we owe our vendors?” (accounts payable). Accrual accounting can also include adjustments such as bad expense. If a DAO has doubts about a customer paying their full bill, they can record a bad expense that adjusts down revenue:

Dr Bad Debt Expense
    Cr Allowance for Doubtful Accounts → contra revenue account

These adjustments should be timely and supported by plenty of documentation since accruals, oftentimes, are well-educated estimates.

Accrual Basis – Basic Example:

Alice programs a UI for Bob’s DeFi DApp and invoices Bob for 10 ETH on 1/31/2022. Bob pays Alice 10 ETH on 2/15/2022. Assume ETH prices stay constant at $3,000 per 1 ETH.

1/31/2022 Entries

Alice:

AccountDebitCredit
Token Receivable30,000
Service Revenue30,000

Bob:

AccountDebitCredit
UI Design Contractor30,000
Accounts Payable30,000

Note: Etherscan will not display any values or transactions on 1/31/2022. It doesn’t know Alice satisfied the performance obligation of design services to Bob.

2/15/2022 Entries

Alice:

AccountDebitCredit
Digital Assets30,000
Token Receivable30,000

Bob:

AccountDebitCredit
Accounts Payable30,000
Digital Assets30,000

Etherscan will display the transfer of 10 ETH from Bob’s wallet to Alice’s. Etherscan typically shows the value at the time of transfer (in UTC time) and the current value. Be sure to click the USD value box to grab the correct value!


Accrual basis – Advanced Example:

On 1/1/2022, Alice staked 50 OSMO to the Osmosis blockchain. On 1/2/2022, she has accumulated 1 OSMO in staking rewards on the principal. Note: rewards on Osmosis are not liquid in the delegator’s wallet until claimed. The close price of OSMO on 1/2/22 is $6.84 USD.

Entry #1 – 1/2/22

AccountDebitCredit
Token Receivables6.84
Staking Rewards Revenue6.84

Alice then claims her staking rewards on 1/3/2022. Right before she claims, the accrued rewards balance is 2 OSMO. The close price of OSMO on 1/3/2022 is $7.68 USD.

AccountDebitCredit
Derivative Asset6.84
Unrealized Gain – Derivative Asset6.84
Digital Assets15.36
Token Receivables6.84
Staking Rewards Revenue7.68
Realized Gain – Embedded Derivative0.84
Derivative Asset0.84

Accounting at Polywarp and dOrg

Polywrap

Polywrap’s accounting system outputs a monthly reporting package that helps guide the DAO in decision-making.

Monthly Reporting Package

The main goal of Polywrap’s accounting system is to output a monthly reporting package. This package contains:

  • Expenses by month
    This statement shows accrual basis expenses by month.

  • Cash activity by month
    Activity per Etherscan shown by month. The reporting package also forecasts the remaining cash runway based on the budget plan

  • Budget vs. actuals
    This report shows the budget for each spending category (like engineering expenses), and how much of that budget has been used up year-to-date.

Modules

The accounting system consists of various spreadsheets (“modules”) that feed data into the reporting system.

  • Etherscan
    This module fetches all of Polywrap’s Etherscan activity.

  • Spending proposals
    Spending proposals are proposals approved by the DAO through governance. They include things like spend for projects, contractors, and more. This module records spending proposals on an accrual basis. Each spending proposal has a general ledger accounting or category labeled which maps to the specific expense line item in the financial report.

  • Contributors
    Distribution calculations for current and future contributors.

  • Main budget
    This module shows the budgeted allowances for each expense category. It also forecasts expenses into the future using the spending proposal and headcount modules as inputs.

dOrg

dOrg is still in the process of transitioning from cash to accrual basis and is also switching to a bookkeeping system outside of Google Sheets. The first (and most critical) step for service DAOs such as dOrg is to set up an accurate subledger. We chose Cryptio since it pulls in all our transactions correctly, especially the multi-sends out of Safe and Utopia. The next part is to create a chart of accounts (COA) in an accounting system (we use Quickbooks Online) that reflects the nature of your DAO’s activity - we have account names like “Project Income - USDC” and “Cryptocurrency Network Fees” that are much different from the template Quickbooks starts with. Finally, the transaction labels in Cryptio need to be mapped to different income statement and balance sheet accounts in COA.

Note: the subledger takes care of your cash basis activity but does not include accrued information!

Luckily for dOrg, our accounting is pretty simple: revenue from client projects and expenses in the form of builder wages and fiat SaaS costs (i.e. Google, Airtable). We use Gilded to send invoices to clients once our work is completed, so our accounts receivable balance can be calculated based on invoice dates and amounts (Gilded doesn’t talk to Cryptio but a side calculation is doable). For each client project, the builders keep detailed timetables of hours worked & billable rates, so a wages payable balance can also be tabulated. Our fiat expenses are either billed monthly (a simple administrative expense) or paid up front and amortized (prepaid expense account).

The tricky part is overlapping on-chain information (i.e. receives and sends) with off-chain accruals. It’s a manual process now due to system constraints but it also gives great visibility into the inner workings of the business and our different client projects.

Conclusion

Until some wizardry technology is invented that feeds off-chain accrual data into cash basis blockchains, accountants will be critical in web3. DAOs especially should lean into the accrual world since it helps members understand the true state of the financials. Lumpy cash flows leave members confused and with information that isn’t immediately useful or actionable. With a comprehensive subledger and accrual schedules, DAO accountants will unlock immense value and accelerate mainstream DAO adoption.