If you’re not a CPA, and you have to deal with accounting rules, you’re likely to feel like you’ve moved into a land of both shadow and substance, of things and ideas, i.e., that you’ve crossed over into The Twilight Zone. For example, at some companies, if you buy a $5000 computer, that’s a capital expense, amortized over several years — whereas if you buy a $4999 computer, that’s an operating expense, recognized immediately. So, the more expensive computer can fit within your budget better than the cheaper computer. Or, if a customer signs a one-year software license, with two optional years of maintenance, you can recognize the revenue for the software license immediately; if, on the other hand, the customer commits to the maintenance up-front, you may have to spread the revenue over three years. So, this year’s numbers look better if you can convince the customer not to commit your product. (A rather special sort of salesmanship!)
In the casual parlance of our day, accounting can seem pretty “random”. But, what if accounting was actually random?
The current rules create perverse incentives. Companies carefully manage revenue (by, for example, delaying order fulfillment from a quarter in which they have plenty of revenue to one in which they may not have enough) to ensure that they meet or beat analyst expectations for revenue and earnings. You can get a better deal on a car on the last day of the quarter; the salesperson wants to get compensated now, not three months later when the next quarter ends. You can often close a deal to sell a company a $100K item on the first day of their first quarter, but even offering the same item for $95K won’t close the deal on the last day of their fourth quarter.
These manipulations may lead to some amount of economic inefficiency, but they are all legal and ethical. In contrast, there are stunts like the one allegedly pulled recently by banks in which currency traders put in a bunch of trades in order to move the price of currency just in time for the so-called “4PM fix”. Banks accept trades in foreign currency throughout the day; these trades are settled in local currency based on the market price of the foreign currency at 4PM London time. So, if a bank can “bang the close,” i.e., push the price of a foreign currency down right ahead of 4PM, it can reduce the settlement amount. But, once the artificial trading stops, the foreign currency price rises, and the bank can sell the foreign currency at the (higher) market rate, allowing the bank to capture a profit that rightfully should have accrued to the trader.
What if we introduced a little randomness? Instead of using the price of the currency at 4PM, an impartial authority (maybe the same people who draw lottery numbers for national lotteries) could make a midnight selection of a random time in the preceding 24 hours; banks would be obligated to use the price at that time to settle trades. Even a random time between 3PM and 5PM would likely make it prohibitively expensive for a bank to enter into market-manipulating trades; the bank would have to bear the costs of money-losing trades for hours, rather than for a brief window around 4PM.
For salespeople, we could measure performance relative to quarterly quotas that ranged from the end of the previous measurement period to a random date that was no fewer than 45 days before and no more than 45 days after the end of the calendar quarter, pro-rated accordingly if the measurement period was not exactly one full quarter. Salespeople would still have a strong incentive to close deals, but they wouldn’t have the same incentive to artificially lower prices at a particular time. The same trick would help with some of the corporate manipulations of revenue; if you don’t know when the revenue is going to hit, you might as well fulfill the order now.
Applying this idea to the OpEx/CapEx problem (wherein more expensive computers look cheaper) or the 1-year/3-year problem (wherein obtaining a longer customer commitment leads to worse near-term financial results) is harder, but a similar approach might still work. For example, if $5000 were not a bright-line test, but instead each transaction were tested against a random number in the range $4000-$6000, with a normal (bell-curve) distribution on the choice of cut-off value, you would reduce the incentive to add a little more RAM to the computer to push it above $5000. Or, if you set the cut-off for amortization not at 1-year, but selected randomly from a range between 6 months and 18 months, you would reduce the incentive to refuse long-term commitments.
Has anyone tried anything like this in a real company? Current regulations wouldn’t let you use these approaches for producing your official accounting statements, but as far as I know there’s no reason you couldn’t use them to drive internal bonus plans.
And, for those of you who are curious, no, I’m not planning a “randomized accounting” start-up! I’ve been diligently advancing my previously stated goals over the past couple of weeks. I’ll soon be joining an angel investment group. I’ve attended some meetings of the high-tech community. I’ve had good meetings with people who are experts in some of the industries of interest to me. I’ve gotten my head around both Amazon’s DynamoDB and Ruby on Rails. I’ll provide an update on those activities soon.
Today, I just felt like writing about something random.
The idea I’ve been kicking around is making payment as “agile” as engineering workflow by replacing fixed-price contracts with an auction system. The customer would ask for a quote on a list of tasks. The vendor would respond with a minimum price for each item, and would start work on the highest-priced items to whose prices the customer agreed. The customer could change the ordering by bidding up items that they considered higher priority or by offering the work to other vendors. When an item was agreed complete, the customer would pay the vendor immediately for that item. What makes the game fun is that higher-priced tasks may not be able to start until lower-priced ones are complete in a kind of priority inversion. If a customer suddenly came up with a new request and wanted the work done immediately, they’d have to bid the task up in price above those already started.