FrançaisEnglishEspañolItalianoDeutschPortuguêsNederlandsPolski

Unearned Revenue Journal Entry: How to Record It

Published on April 13, 2026 · Jules, Founder of NoNoiseMetrics · 8min read

Updated on April 15, 2026

An unearned revenue journal entry records cash received before the service is delivered. For SaaS, this happens every time a customer pays for an annual or multi-month plan upfront. The unearned revenue journal entry is a two-step process: first, record the cash receipt as a liability (unearned revenue), then convert that liability to revenue as each service period is completed. Getting this right keeps your P&L honest and your balance sheet clean. This guide shows you the exact debit/credit entries for monthly plans, annual prepaid plans, and edge cases.

Unearned Revenue (also called deferred revenue) is a liability on the balance sheet representing cash received for services not yet delivered. It converts to revenue as the service obligation is fulfilled.


Unearned Revenue Journal Entry: How to Record It

The Two-Step Process

Every unearned revenue scenario follows the same two-step pattern:

Step 1. Record initial cash receipt (cash received, service not yet delivered):

Dr. Cash / Bank              [amount]
   Cr. Unearned Revenue           [amount]

Step 2. Recognize revenue as service is delivered (each period):

Dr. Unearned Revenue         [period amount]
   Cr. Revenue                    [period amount]

Step 1 happens once (when payment is received). Step 2 repeats each period until the unearned revenue balance reaches zero.


Monthly Subscription Example

Scenario: A SaaS company charges €99/month, billed monthly in advance. Customer pays on April 1.

In a monthly plan where billing aligns with the service period, the cash receipt and revenue recognition happen in the same period. There is no deferred balance to carry:

April 1. Cash received and revenue recognized in the same month:

Dr. Cash / Bank             €99
   Cr. Revenue                   €99

When to use unearned revenue for monthly plans:

If you bill on the 15th of the month but the service period runs the 1st to the 30th, you have half a month of unearned revenue at billing. In that case:

April 15 — Cash received:
Dr. Cash / Bank             €99
   Cr. Unearned Revenue          €99

April 30 — Recognize half-month of service (April 15–30):
Dr. Unearned Revenue         €49.50
   Cr. Revenue                    €49.50

May 14 — Recognize remaining half-month:
Dr. Unearned Revenue         €49.50
   Cr. Revenue                    €49.50

For most self-serve SaaS with Stripe, billing date equals service start date, so monthly plans rarely create unearned revenue balances.


Annual Subscription Example

This is where unearned revenue journal entries become essential. Annual prepaid plans are the most common source of deferred/unearned revenue on a SaaS balance sheet.

Scenario: Customer pays €1,188 upfront on April 1 for a 12-month annual plan (€99/month equivalent).

April 1. Record cash receipt:

Dr. Cash / Bank            €1,188
   Cr. Unearned Revenue         €1,188

April 30. Recognize April revenue (1 month of service delivered):

Dr. Unearned Revenue        €99
   Cr. Revenue                   €99

May 31. Recognize May revenue:

Dr. Unearned Revenue        €99
   Cr. Revenue                   €99

This pattern repeats monthly for 12 months. By March 31 of the following year, the unearned revenue balance is zero and all €1,188 has been recognized as revenue.

Running balance table:

MonthRecognitionUnearned Revenue Balance
April 1 (start),€1,188
April 30€99€1,089
May 31€99€990
June 30€99€891
July 31€99€792
August 31€99€693
September 30€99€594
October 31€99€495
November 30€99€396
December 31€99€297
January 31€99€198
February 28€99€99
March 31€99€0

Track from Stripe. NoNoiseMetrics converts your Stripe annual charges into month-by-month recognized MRR automatically. Try free


Multi-Year Contract Example

Scenario: Enterprise customer signs a 2-year contract for €24,000 total (€1,000/month), full payment upfront.

Day 1. Record full payment:

Dr. Cash / Bank           €24,000
   Cr. Unearned Revenue (current)    €12,000   (next 12 months)
   Cr. Unearned Revenue (non-current) €12,000  (months 13–24)

The split between current and non-current is required under GAAP. Current unearned revenue is the portion expected to be recognized within 12 months. Non-current is everything beyond that.

Month-end recognition (each of 24 months):

Dr. Unearned Revenue (current)  €1,000
   Cr. Revenue                       €1,000

At month 12, roll €12,000 from non-current to current:

Dr. Unearned Revenue (non-current)  €12,000
   Cr. Unearned Revenue (current)        €12,000

For more on the deferred/unearned revenue balance sheet treatment, see deferred revenue for SaaS and Stripe.


Upgrade Mid-Period

Scenario: Customer is 3 months into a €99/month annual plan. Upgrades to €249/month. Prorated credit applied.

At upgrade date:

Remaining unearned revenue on old plan: 9 × €99 = €891

Cancel old plan, book new plan with prorated credit:

Dr. Unearned Revenue (old plan)    €891
Dr. Cash / Bank                  €1,350   (upgrade charge: 9 × €249 − €891)
   Cr. Unearned Revenue (new plan)      €2,241   (9 × €249)

Monthly recognition going forward:

Dr. Unearned Revenue        €249
   Cr. Revenue                   €249

Refund Entry

Scenario: Customer cancels 2 months into a 12-month annual plan (€1,188 upfront). Prorated refund for unused 10 months.

Revenue already recognized: 2 × €99 = €198
Unearned revenue balance: €1,188 − €198 = €990
Refund: €990

Dr. Unearned Revenue        €990
   Cr. Cash / Bank               €990

The €198 recognized in months 1–2 stays as earned revenue. Never reverse recognized revenue to process a refund, only the unearned (not-yet-delivered) portion is returned.


Common Mistakes

Booking cash directly to revenue

The most expensive mistake. If you recognize €1,188 upfront instead of spreading it, your April revenue is inflated by €1,089, and the next 11 months are understated. This creates a roller-coaster P&L that confuses investors and complicates forecasting.

Forgetting non-current unearned revenue

Multi-year contracts create long-term liabilities. If you classify everything as current, your balance sheet shows the business as less liquid than it is, because current liabilities appear larger relative to current assets.

Not maintaining a recognition schedule

Each customer on an annual or multi-year plan needs an entry in a deferred revenue schedule, a record of the contract start date, total amount, monthly recognition amount, and running balance. Without this, month-end close becomes a manual reconstruction exercise.

Using invoice date instead of service start date

The recognition clock starts when service delivery begins, not when you send the invoice. If a customer signs on April 25 but service starts May 1, no revenue is recognized in April.


What Counts vs What Does Not

Counts as Unearned RevenueDoes NOT Count
Annual plan paid upfrontMonthly plan paid for current month
Multi-year contract, full prepaymentOne-time setup fee (may be deferred, different rules)
Quarterly plan paid upfrontRevenue already delivered and billed
Gift cards / account creditsMonthly plans billed in arrears

For the distinction between unearned revenue and related terms, see unearned revenue vs deferred revenue and the broader revenue recognition principle for SaaS.


FAQ

What is the journal entry for unearned revenue received?

When you receive cash before delivering the service: debit Cash (increase asset), credit Unearned Revenue (increase liability). The credit to Unearned Revenue acknowledges you owe the customer service. This is the initial entry for any prepaid subscription.

What is the journal entry when unearned revenue is earned?

As service is delivered each period: debit Unearned Revenue (decrease liability), credit Revenue (increase income). For a €99/month subscription from a €1,188 annual payment, you make this entry for €99 at the end of each month for 12 months.

Is unearned revenue a debit or credit?

Unearned revenue is a liability account, so it carries a credit balance. When you receive cash, you credit (increase) it. When you recognize revenue, you debit (decrease) it. The asset side (Cash) is debited when you receive payment.

How often should you process the recognition entry?

For SaaS, month-end is standard. Run a recognition entry at the close of each month for all active annual and multi-year subscriptions. Many accounting systems automate this with a deferred revenue schedule.

What happens to unearned revenue when a customer cancels?

If the customer is entitled to a refund, debit Unearned Revenue and credit Cash for the refund amount. If no refund is owed (e.g., the contract is non-refundable), the unearned balance can be recognized immediately as revenue upon cancellation, since the service obligation no longer exists.

Where does unearned revenue appear on financial statements?

On the balance sheet, as a liability. Current unearned revenue (recognized within 12 months) is under current liabilities. Non-current unearned revenue (recognized beyond 12 months) is under long-term liabilities. It does not appear on the income statement until earned.

How does ASC 606 affect unearned revenue journal entries?

ASC 606 codifies the existing logic: cash received before service delivery creates a contract liability (unearned revenue). The standard requires you to recognize revenue as performance obligations are satisfied. For standard SaaS subscriptions, this means the same monthly recognition schedule. ASC 606 gets more complex with multi-element arrangements (e.g., software license + support + implementation).

Can I combine the initial and recognition entry into one?

Only if the service period and billing period are identical (e.g., monthly billing where April 1 payment covers April 1–30 exactly). In that case, you can debit Cash and credit Revenue directly. For any prepaid amount covering future periods, the two-step process is required.


External resources:


MRR Dashboard Template

See your recognized vs collected revenue side by side. The MRR dashboard template pulls from Stripe and shows period-by-period recognition automatically, no spreadsheet required.

Open MRR Dashboard Template →

Share: Share on X Share on LinkedIn
J
Juleake
Solo founder · Building in public
Building NoNoiseMetrics — Stripe analytics for indie hackers, without the BS.
See your real MRR from Stripe → Start free