How to choose between Perpetual and Periodic inventory methods. Or, in summary, why you should choose Perpetual. 

Part of GrowthPath's Profit Engineering Essential Skills series


Make more money with the insights of Perpetual Stock control

Of the two methods of calculating your gross margin when selling items, the Perpetual method is vastly superior. You'll know the margin of each invoice and customer. You'll make better pricing, discounting and marketing decisions. After reading this, you'll be better placed to choose a new accounting system. The good news is that cloud offerings are already good enough for many businesses with stock, and they're getting better fast.

Perpetual Inventory Explained from the management point of view

Perpetual inventory gets its name because it tracks movements of stock the instant they happen.

"Perpetual" is not a very helpful name. We think it should be called the "Always Correct Inventory" system. However, we'll settle for Perpetual, being an abbreviation of "Perpetually Correct".

Under Perpetual Inventory, your company pretends that it incurs a replacement cost the instant you ship stock to a customer. This is the crucial insight. You pay for the stock at some point in the past -- if your supplier doesn't give you credit terms, then you pay for your stock the moment it arrives at your warehouse, or possibly even earlier. But we don't count it as a business cost until you sell it. And the reason is not actually that you just sold it, but that you now need to replace it. The cost of replacing it happens the moment you ship the stock to your customer: Perpetual Inventory assumes instant replacements of stock for exactly the quantity you sold to your customer. You don't buy a constant stream of replacement items; you order in bulk, but the fiction of immediate replacement cost has advantages.

Since inventory doesn't become an expense until you sell it, we keep unsold inventory in an asset account called "inventory". An "asset" is something you own which will benefit you in the future.

This means that if you buy a lot of stock in a month but don't sell much, your profit won't be affected by your investment in stock. It's like having a bank account, but instead of having cash, you have "inventory". You "withdraw" from the inventory account when you sell stock. This approach matches the timing of your expenses (having to buy more stock) with the sales it relates to. This is the way "accrual accounting" works. It doesn't always match the cashflow of a business very well. 

Read more about Cash vs Profit reporting

Both Periodic and Perpetual systems delay showing the cost of stock until you sell it, ignoring when you paid for it. This timing effect can cause high profits in months when your bank balance declines. So you will need to keep track of cashflow over and above the profit and loss reporting you get from your system. For this tradeoff, the Perpetual system delivers some important insights. The Periodic system, much less so.

To use perpetual inventory, you need these capabilities:

  • Your system needs to record the quantity you have of each item
  • You need to record changes: so when you receive stock, you need to tell your system. And your sales orders must detail exactly which items you shipped.
  • The system needs to know the replacement cost of each item.
  • Your system needs to be a real double-entry bookkeeping system. That is, it needs to make reports called "Balance Sheet" and "Profit and Loss" (also known as "Income Statement"), and it has to have an "inventory" account.

Below, there are more details.

Note that you don't have to use a "cost of goods sold" method for everything in your business. You can still buy things and treat them as an immediate expense. You probably would not want to do this for trading stock, because you lose insight into your margin. But it is normal to do this for supplies like printer paper.

If on an invoice you sold two coats at a retail price of $250 each, and they cost you $100 to buy from your supplier, you cost of goods sold is $200.

With sales of $500, your contribution margin on the sale is $300.

We'll come back to the advantages of all this bureaucracy, but first, the Periodic Inventory System

See also: Choosing a cloud-based accounting system in Australia

Periodic Inventory Explained from the management point of view

In the periodic inventory system, you record the cost of stock when you buy it, in an expense account called "Purchases" (this account does not exist for stock in the Perpetual system). That's simple!

In order to prevent unsold inventory from lowering your profit, stock purchases is reduced by the change in stock. If you bought $1000 of stock and sold none of it, the net effect of stock purchases would be zero. It works differently, but comes to the same conclusion as Perpetual, at least as a total.

Periodic works out what stock you consumed in a certain period; that's where the name comes from. The period for most businesses is usually a month.

If you need to have daily insights into your business, you should give the periodic system a big black mark already.

"Value of stock" in this case means dollars, not quantity.

So in this system, you need to know

  • the dollar value of your purchases over the month (which is easy, since you record them anyway to pay them)
  • the dollar value of your stock precisely at the end of the month

Try doing it manually. Say in March you started with $0 of stock. You bought $1000 of winter coats, (10 coats which cost you $100 each). At the end of March, you have sold two coats. When you count your stock at the end of the month, you have 8 coats, which you give a value of $800 (you sell them for $250 each, but we always value stock at our replacement cost). So the cost of goods sold over the whole month is $0 (starting) + $1000 (purchases) less $800 (at the end of the month) = $200. The idea is to say that the amount of inventory we used in the month is the amount we bought in the month, taking away anything we bought but didn't sell yet.

We talk about the value of stock at the start of the month and at the end of the month, but we only count once a month. The count at the end of February is also used as the value for the start of March.

Under this system, we don't get our margin until the end of the month, and our system can't assign a margin to individual sales. It's slow, and not very insightful.

This vital step of knowing our stock value at the end of the month is "hand waving". Under the Periodic System, this value just arrives from somewhere outside of your accounting system. In practice, it involves counting your stock item by item, and giving each item a dollar value, and adding it all up. This can be done with an end-of-month stock take. This is less work than tracking every movement of stock, as demanded by the Perpetual System. In the days of manual stock records, it was much less work. However, modern IT doesn't require manual record keeping.

Why is Perpetual Inventory much better?

Perpetual is much better. It is not, in practice, much more work, and in return you get a profit result on every invoice. That's because every single shipment immediately gets a cost associated with it.

In the simple example above, where we only sold one item, a winter coat, and it always had the same selling price, this advantage of perpetual inventory does not seem important.

But imagine that we had scarves which had different prices, and imagine that we ran some discount sales during the month. Imagine that we sell wholesale, retail and online, all at different prices. The Periodic System will tell you a lump-sum gross margin for the month, but it won't give you any insight into the particular sales transactions. The Perpetual System gives you these insights, and it does it immediately. You don't need to wait until the end of the month. Perpetual is vastly superior.

See also: More profitable sales via simple tweaks to your accounting system (contribution margin)

For Accountants: Some technical notes about periodic and perpetual inventory

The traditional periodic inventory method means that purchases are stock are booked into an expense account, Purchases, when stock is received (DR Purchases). This expense account is combined with the difference in opening and closing stock to work out how much stock cost to book in the margin. The Purchase expenses does not include GST.

Perpetual inventory has no Purchases account. It simply does not exists for inventoried stock. Instead, when stock is received, the system does DR Inventory (once again, GST is booked elsewhere). So stock received is immediately capitalised as an asset (and so too are any associated costs, such as customs clearance). The cost of stock is recognised via a DR Cost of Goods Sold / CR Inventory when the goods are shipped; this happens every time there is a shipment. So the transactions of shipping goods and generating an invoice actually creates two entries: one which is DR COGS/CR Inventory, and then DR Accounts Receivable/CR Sales. There is no need to do month end stock takes to work out the margin.

About Landed Costs

Technically, the cost of an item in stock is its replacement cost, and this may include costs on top of the price paid for the item. There may be freight costs, duties and clearance costs, and some of these costs may come from different vendors, such as a freight forwarding company. These additional costs can be isolated from the stock by booking them as normal expenses, but it more accurate to include them in the cost price. Absorbing these additional costs into stock value makes the gross margin reporting more accurate. This general approach to costing is called "landed costs". It has some complexities:

  • The suppliers of these additional services is often different to the supplier of the products
  • The timing of these costs may not match when the goods arrive at your warehouse
  • The currencies may be different

Then there is the question: how do we apportion a $2000 freight cost over a PO of ten lines of SKUs? The most common way is to spread the cost weighted by the value of the lines of the PO, even though value may not be the real driver of the costs. Some cheap items on the order may take up half of the container, for example, but if they are low value, they won't bear much share of the additional costs. 

Evaluating an inventory system

The minimum features a Perpetual System needs to support is inventory items, purchase orders with receipts, invoices, stock level adjustments and stock value adjustments.


There are different ways to tracking the true replacement cost of an item. If your supplier sometimes gives you a quantity discount, or if prices change based on market conditions or exchange rates, then it may not be obvious what the real replacement cost is. Basic systems leave you to make adjustments if necessary. More advanced systems will offer to calculate running averages. Apart from averages, accounting offers other methods, such as "FIFO" (First In First Out) vs "LIFO" ... if you bought 10 coats on Monday at a cost of $100 each, and then 10 coats on Tuesday at $125 each, and then on Wednesday you sell 15 coats ... how do you calculate the cost? Did you sell Monday's 10 and 5 of Tuesday's, or vice versa? Or perhaps you want everything to be always valued at the last price you paid your supplier. Sophisticated systems deal with this. There are tax consequences as well: some of these decisions let you defer profit to later, something that tax authorities don't like. Really good systems let you track costs internally using one system, while preparing tax accounts using another method, but at the moment no cloud systems do this.

If you are assembling or producing items, traditionally the costs associated with this production process are "absorbed" in the cost of the finished good. We do this be taking an estimate of these costs (such as labor costs). Unleashed and Dear Inventory support this. Absorption costing should lead to variance accounting (if you absorb $10 a labor into each finished good, it's often worth checking this estimate each month against actual production labor costs). Absorption costing has some traps, though, particularly if you build very large stock for seasonal patterns. Your month-to-month profit can be very distorted. The accounting modules included with cloud accounting offer almost no support for these costing requirements. But packages like Unleashed and Dear Inventory are quite good.


In general, a more advanced inventory system could offer:

  • Items which are immediately treated as expenses (like printer paper, ink cartridges etc)
  • foreign currency items
  • different costs methods: last price paid, averages, First In First Out, Last In First Out. Or even simultaneous use of different cost methods.
  • Automatic revaluations of stock when a value changes
  • kits: you define a bundle "Autumn offer" which is a coat and a scarf, and when you sell one of these, the system is smart enough to deduct one coat and one scarf, and the work out the correct cost.
  • Variants: some businesses have a "template" product with standard variants. Plain T-shirts which come in different colors and sizes is a good example. An inventory system which understands variants may be helpful.
  • Reordering assistance. This can be a reorder level per item. There are more sophisticated methods, based on forecasting future demand and lead times.
  • Manufacturing support ("recipes" that let you combine components into a finished item, like kits, but with allowances for reject rates and process steps)
  • Multiple locations. Even better, special locations such "rework", or "quality inspection", or "returns", which can be quarantined from general stock.
  • Drop shipments or cross-docking support for physical flows which don't go through your main warehouse.
  • Various methods of stock counting to minimise disruption
  • Landed cost support, including flexible treatment of the complexities and options mentioned above.

Integration and workflow (Sales Orders, Purchase Orders, expiry dates and batches....)

Having stock is more than counting and valuing it. You may want to integrate your sales with a Point of Sale system. You may want to show stock levels and delivery times on an online store. You may want to support purchase orders. Evaluate these points too. There are systems which support serial numbers, batches, expiry dates and engineering version control of different product variants. There are also systems which optimise transport management, truck loading and delivery routes.

An ancient business control is "three way matching". This means comparing a supplier invoice for prices against our purchase order and comparing the stock quantity received against the quantity shown on the invoice. An inventory system can support this, by warning or even preventing non-matching entries.

Where can a small business find a Perpetual Inventory System?

Until recently, only traditional ERP software offered this power. These packages mean an investment of $20K, ball park, with annual "maintenance" fees of around 20% to 25%. Plus you may need a server which needs backups, UPS and administration.

Now, cloud packages are offering some decent functionality. You won't find all this power in a typical cloud accounting package, but you will find it in third-party systems that "plug-in" to Saasu or Xero, for example.

Please contact GrowthPath: we specialise in this.

The traditional install-on-a-PC MYOB AccountRight and QuickBooks have basic Perpetual (they also let you choose Periodic)

Most common cloud accounting packages now have perpetual inventory, including Xero, Saasu and QuickBooks Online, although in some cases the exact functionality depends on the plan.

Note that on top of this basic functionality, there are layers are other features, such as warehouse location tracking, different warehouses, serial- and batch-numbering, returns, purchasing, barcode support and integration with transport companies. The cloud accounting packages have a huge advantage over MYOB. Cloud systems have open "interfaces" (APIs) which mean you can easily use plug-in third party packages which offer good Perpetual Inventory, such as Dear InventoryUnleashed and Stitch. Some of these cloud-based packages offer near-ERP functionality, at a fraction of the cost. Plus they are easier to use, and you don't need a server. 

Quick notes on integrations with Xero

When choosing a cloud inventory system to integrate with Xero, these are areas to consider:

Customer and Supplier Payments

Unleashed does not process payments. It creates invoices and sends them to Xero. All payments happen in Xero. A simple approach which is bullet proof. 

Dear Inventory can process payments and send them to Xero, or it will sync with payments made in Xero. It also provides links in Xero that go straight to the Dear source document. 

Business segmentation

This is a very big win for Dear Inventory. It will send tracking categories to Xero. So you can link a Dear location to a Xero tracking category, for example. In fact, you can map from a long list of Dear "entities", not just location. This is very compelling feature. It extends to many fields in Dear.

Unleashed doesn't do this. You can specify dedicated revenue accounts per customer, but there is no link to warehouses.

Inventory Value and Costing Methods

Inventory systems manage stock, so they are responsible for the valuation of stock on your Xero balance sheet. They send financial summaries of anything which affects stock value, such as a receipt into a warehouse, a shipment, a stock take, a stock adjustment or a manufacturing step which turns components into a sub-assembly or a finished item. The systems of course use a perpetual approach. 

There are a few different costing methods in the accounting text books. The choice usually doesn't matter much: accounting standards are reasonably flexible, and for good quality decision making about pricing, competitor response and cash flow management, relying on any historical information is perilous. Dear is very proud of its FIFO costing, and basically, mandates it. Dear has costing closely integrated with its batch and serial tracking. In fact, you activate batch or serial tracking on an item by changing its costing method. 

Unleashed and most other cloud inventory systems, including the built-in modules of Xero, Quickbooks and Saasu, use weighted average costing. I think there should be choice. Accpac, my standard representative of traditional systems, allows you to choose from average, most recent, FIFO and standard costing. It doesn't matter very much to me, because standard accounting costing approaches are all flawed, and you need to be careful using them. Why flawed? Because although not many accountants seem to appreciate this, the true cost of costs is the replacement cost, and all accounting costing methods are just different approximations of this. 

Note the FIFO costing is basically the same as weighted average over time. Dear Inventory only offers FIFO. This is a deliberate decision: it means that Dear Inventory can offer a consistent costing method across normal stock, and stock tracking in batches, lots and by serial number (all supported by Dear Inventory) . 

Landed costs: Both Dear and Unleashed offer landed cost support. At this point, Dear's support is better. 

Using perpetual inventory margin information for growth

The traditional Profit and Loss report is,  generally speaking, often not very useful at helping you make decisions. The best that you can hope for is trends which will continue.

A Perpetual Inventory system, even a basic one, has all the ingredients for profit analysis per customer or product line or sales channel, even hourly. However, you won't get this. You will need to get an add-on approach, which can be fairly simple, particularly for cloud-based systems, which have great APIs. For MYOB, you will need to extract data (read about MYOB Data extraction).

This is definitely worth a serious think.

Timing differences between sale and shipments which affect margin

The gross margin on a sale is the value of the sale less the direct costs associated with it. The periodic method does not determine this order by order, but rather for a whole month at a time.

The great promise of perpetual inventory is margins per order.

Be aware, though, that the sale and the shipment of goods are two separate transactions which can happen on different dates.

If on Monday you sell, then the transaction is a DR Receivables, CR Sales

If you ship on Wednesday, then you see a DR COGS CR inventory on Wednesday.

A P&L run only for Monday will show a sale with no cost, and Wednesday will show costs with no revenue.

[In reality, on Wednesday you probably have a sale you won't ship until Friday, so there is some "swings and roundabouts" correction at work.]

To get meaningful figures, you need a solution for this. You could defer the date on the sale until Wednesday, for example. Or you could make an adjusting accrual entry as part of month end. 

More sophisticated systems will handle this automatically, but we don't see this in the typical accounting systems which SMEs will use.

Bear this in mind as you investigate perpetual inventory solutions. You need to have a process to deal with this, unless it is "swings and roundabouts" and you are happy to accept it



Read more about cloud accounting packages