先入先出法(FIFO)は、古く取得したものから払い出したと仮定して原価を配分し、期末在庫には新しい取得分が残ると考える方法です。取得時期別の数量と単価を管理する必要があります。これは会計上の原価配分の仮定であり、倉庫で物を必ず同じ順に動かす義務を意味しません。
3月末に20個・単価300円があり、4月2日に50個・単価280円を仕入れると、70個・20,000円になります。4月2日に10個を払い出す場合、古い300円の10個を使ったと仮定するので、原価は3,000円です。残りは300円の10個と280円の50個です。
4月4日に20個を払い出すと、300円の10個と280円の10個を使い、原価は3,000+2,800=5,800円です。残りは280円の40個、金額11,200円となります。4月5日に60個・単価320円を仕入れると、100個・30,400円です。
4月5日に50個を払い出すと、280円の40個と320円の10個を使い、原価は11,200+3,200=14,400円です。残り50個は320円の取得分で、在庫金額は16,000円です。全払出原価は3,000+5,800+14,400=23,200円で、在庫16,000円との合計は39,200円へ一致します。
後入先出法は新しい取得分から払い出したと仮定する原価配分方法ですが、日本基準では選択できる評価方法から削除されています。「一般的でないだけの現行選択肢」として扱いません。食品等の実物流では、取得順だけでなく消費期限・賞味期限の近い品を先に出すFEFO等の作業ルールを別に決めます。