Revenue Management: #9 Revenue Recognition in Media & Publishing

Revenue Management: #9 Revenue Recognition in Media & Publishing

   

Media & Publishing industry has evolved in recent times. It offers subscriptions, bundles digital and print access, runs sponsored content, and sometimes even sells ad spaces. If you run a media or publishing business, you will always get into a situation where you get paid in advance, but how do you determine what part of the money is earned today versus what needs to be deferred for the future? Can you recognize all of them upfront? Or should it spread across issues or impressions?

How do publishers and media platforms handle revenue?      

Revenue Recognition Scenarios in Media & Publishing

Subscriptions, advertising contracts, bundled content, and sponsored campaigns often complicate revenue recognition in media and publishing. Though accounting guidelines like ASC 606 and IFRS 15 apply, how you use them varies based on how you deliver content.


Subscription Revenue

When a customer pays for a weekly, monthly, or annual subscription, the revenue must be spread across the subscription period, as content is delivered over time rather than upfront.


Example: A $120 annual magazine subscription should be recognized at $10 monthly over 12 months.

Bundled Offerings

You may offer print+digital access, or magazine+e-book bundles. Each component should be recognized separately based on delivery schedules and relative values.


Example: A $240 subscription includes $180 of weekly print magazines and $60 for e-book access. Revenue is recognized $15/month for print and $60 once access is granted.

Advertising Revenue

Advertising may be sold per issue, impressions, or based on clicks. You can recognize revenue only after delivery of an impression or publication, not when the ad is sold or paid for.


Example: A $5000 ad campaign for 1,00,000 impressions recognizes revenue only as impressions are delivered (say $500 for every 10,000)

Sponsored Content or Paid Articles

Sponsored stories or influencer placements should be recognized on publication date or campaign completion, depending on the agreement.


Example: A $2000-paid article is published on July 5th, and revenue is recognized on the same day.

Cancellations & Refunds

If a subscriber cancels mid-cycle and gets a partial refund, revenue must be adjusted with only the earned portion as recognized.


Example: $120 yearly subscription cancelled after 3 months. Only $30 will be considered recognized.

These scenarios highlight how delivery, not payment, drives revenue recognition. With multiple formats and monetisation models in place, manual revenue recognition handling is a huge task prone to errors and misstatements.

Info
Scenario: 

Your publishing company sells an annual subscription package at $240. This subscription covers weekly print magazine work of $15 and on-demand access to the digital library, which is valued at $60. The customer pays upfront on the 1st of January.  

Zoho Billing for Media Revenue Recognition


Publishers and content creators will be able to work with Zoho Billing to define revenue recognition rules based on content delivery and access architecture.

For the scenario above, you may go with the following revenue recognition rule configuration,

Component

Recognition Frequency

Recognition Method

Recognition Time

Print Magazines

Monthly

Evenly Distributed Prorated

Period Start

Digital Library

Once

One-Time (Daily)

Period Start

 

Even though the $240 is received upfront, revenue must be split evenly for the subscription-based service.


Reports in Zoho Billing
Let's say you are checking the reports during March.

i) Recognized Revenue Report

Component

Recognized Revenue

Description

Digital Library

$60

Fully recognized on the subscription start date

Print Magazine

$45

$15x3 issues delivered

Total Recognized

$105

recognized at the end of three months

 

ii) Deferred Revenue Report

After three months of offering, nine print issues are still pending delivery.


Component

Deferred Amount

Digital Library

$0

Print Magazine

$135 (9 months of deliverables)

Total Deferred

$135

 

iii) Revenue Waterfall Report


Month

Digital Library

Print Magazine

Total

Month 1

$60

$15

$75

Month 2

----

$15

$15

Month 3

----

$15

$15

Month 4 (upcoming)

----

$15

$15

Month 5 (upcoming)

----

$15

$15

Month 6 (upcoming)

----

$15

$15

Month 7 (upcoming)

----

$15

$15

Month 8 (upcoming)

----

$15

$15

Month 9 (upcoming)

----

$15

$15

Month 10 (upcoming)

----

$15

$15

Month 11 (upcoming)

----

$15

$15

Month 12 (upcoming)

----

$15

$15

Total (after 3 months)

$60

$45

$105

 

Only at the end of one year will the full payment you received be considered recognized revenue.

Idea

Best Practices for the Media Industry while recognizing revenue

  • Break Down Subscriptions: Separate print, digital, access, ads, and events into individual deliverables.

  • Match Revenue to Delivery: Recognize only when issues go out, impressions are served, or access granted.

  • Account for Returns & Refund: Handle cancellations by adjusting the deferred revenue schedules automatically.

  • Monitor Reports Monthly: Revenue Waterfall and Deferred reports ensure timely recognition tracking. 
Notes
Up Next: Common Mistakes while Recognizing Revenue

      Zoho Campaigns Resources


        • Desk Community Learning Series


        • Digest


        • Functions


        • Meetups


        • Kbase


        • Resources


        • Glossary


        • Desk Marketplace


        • MVP Corner


        • Word of the Day


        • Ask the Experts


          • Sticky Posts

          • Community Learning Series | Digest #5 — September 2020

            Dear customers, We're happy to bring you the September edition of our #CommunityDigest! Keep track of your subscription KPIs right from your smartphone: Last month, we enhanced our Android mobile app to help our customers get daily updates on their business health. We got to know from a lot of customers that this has made their job much more easier because they no longer have to keep a reminder to manually check on the previous day's revenue or activations. If you have not downloaded it yet, here's
          • Community Learning Series | Digest #4 - August 2020

            Dear customers, We hope you're staying safe and healthy. I'm happy to bring you the fourth edition of our #CommunityDigest with some brand-new updates from us. 1. Daily Business Updates (for Android users) The Zoho Subscriptions Android app has got a cool new update: You can now get a push notification to your smartphone that lets you know how many activations and cancellations have taken place, and what's the net revenue for the previous day. The best part is, you can tell the app when exactly you
          • Community Learning Series | Digest #3 - July 2020

            Dear customers, We hope you're staying safe and healthy. We're glad to bring you the July edition of our #CommunityDigest. New community members can view our previous newsletters here. This time, we have two major updates and three interesting topics for you: 1. Zoho Subscriptions Developer Community Since the inception of Zoho Subscriptions, our team believed that the recurring billing platform we provide should be able to offer an extensive API library that empowers businesses to automate most
          • Introducing: Community Learning Series | Digest #1 - May 2020

            Dear customers, We hope you are staying safe and healthy. Helping businesses manage their customer subscriptions more efficiently has always been, and always will be, our goal at Zoho Subscriptions. We strongly believe this is possible if we grow together as a community and share what we know with each other. To nurture this shared learning experience, here is our brand-new Community Learning Series! ​ Welcome to the first edition of our digest! Each edition of our community digest includes guides

          Zoho CRM Plus Resources

            Zoho Books Resources


              Zoho Subscriptions Resources

                Zoho Projects Resources


                  Zoho Sprints Resources


                    Zoho Orchestly Resources


                      Zoho Creator Resources


                        Zoho WorkDrive Resources



                          Zoho CRM Resources

                          • CRM Community Learning Series

                            CRM Community Learning Series


                          • Tips

                            Tips

                          • Functions

                            Functions

                          • Meetups

                            Meetups

                          • Kbase

                            Kbase

                          • Resources

                            Resources

                          • Digest

                            Digest

                          • CRM Marketplace

                            CRM Marketplace

                          • MVP Corner

                            MVP Corner




                            Zoho Writer Writer

                            Get Started. Write Away!

                            Writer is a powerful online word processor, designed for collaborative work.

                              Zoho CRM コンテンツ




                                ご検討中の方

                                  • Recent Topics

                                  • Zoho Creator In-App Notification

                                    Hi Team, I have implemented an in-app notification using code, as it required some customization. I followed the example in the link below: https://www.zoho.com/deluge/help/pushnotify-using-deluge.html#Example I have a couple of questions regarding this
                                  • CRM x WorkDrive: File storage for new CRM signups is now powered by WorkDrive

                                    Availability Editions: All DCs: All Release plan: Released for new signups in all DCs. It will be enabled for existing users in a phased manner in the upcoming months. Help documentation: Documents in Zoho CRM Manage folders in Documents tab Manage files
                                  • Unable to integrate Zoho Projects and Zoho Workdrive

                                    I'm a Zoho One subscriber. When I go to Zoho Projects > Settings > Marketplace > Zoho Apps I do not see an option for Zoho Workdrive but I do see one for Zoho Docs that does nothing. How do I get the option to integrate Zoho WorkDrive and Zoho Proje
                                  • Upload own Background Image and set Camera to 16:9

                                    Hi, in all known online meeting tools, I can set up a background image reflecting our corporate design. This doesn't work in Cliq. Additionally, Cliq detects our cameras as 4:3, showing black bars on the right and left sides during the meeting. Where
                                  • 【まだ間に合う!】Zoho ユーザー交流会 | AI活用・CRM・Analytics の事例を聞いて、ユーザー同士で交流しよう!

                                    ユーザーの皆さま、こんにちは。コミュニティチームの藤澤です。 3月27日(金)に東京、新橋で開催する「東京 Zoho ユーザー交流会 NEXUS」へのお申し込みがまだの方は、この機会にぜひお申し込みください!(参加無料) ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー イベントの詳細はこちらから▷▷ https://www.zohomeetups.com/tokyo2026vol1#/?affl=communityforumpost3 ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
                                  • ZeptoMail API

                                    Hello Since today, we experience issues with the ZeptoMail API. When trying to send e-mails using: https://api.zeptomail.eu/v1.1/email we receive the error: (503) Site unavailable due to a traffic surge. Please try again shortly. I kindly ask you to identify
                                  • Restrict portal signup until registration form and payment are completed

                                    Hi everyone, I am working on a Zoho Creator portal for a project. In our business flow, users must first fill out a registration form and pay a registration fee before they are allowed to access the portal. However, when I share the portal link, users
                                  • Sender Email Configuration Error.

                                    Hello Team, Hope you are all doing well. We are in the process of creating the Zoho FSM environment in the UAE. When we try to add the sender email address “techsupportuae@stryker.com”, we receive the error message: “Error occurred while sending mail
                                  • Managing user mailbox actions

                                    An organization often has users with different roles and responsibilities, such as leadership, operations, or support teams. While some users may require full access to email features, others may only need limited functionality. For example, enabling
                                  • Super Admin Logging in as another User

                                    How can a Super Admin login as another user. For example, I have a sales rep that is having issues with their Accounts and I want to view their Zoho Account with out having to do a GTM and sharing screens. Moderation Update (8th Aug 2025): We are working
                                  • Custom function return type

                                    Hi, How do I create a custom deluge function in Zoho CRM that returns a string? e.g. Setup->Workflow->Custom Functions->Configure->Write own During create or edit of the function I don't see a way to change the default 'void' to anything else. Adding
                                  • Internal Fillable Contract with Zoho Writer (Before Sending to Client)

                                    Hi everyone, I’m trying to automate the following process in Zoho CRM and would appreciate some guidance. Process: When a Deal moves to a specific stage, CRM triggers an automation. CRM sends a contract template to an internal team member so they can
                                  • Update P_Leave: code: 7052 "Employee_ID": "Enter Employee ID"

                                    Hi, Zoho People - Update Leaves Can someone assist? ------------------------------------------------------------------------------------------ col = Collection(); col.insert("recordid":id); col.insert("Date_Check_Approval":zoho.currentdate); info zoho.people.update("P_Leave",col.toMap());
                                  • Prevent tracking users from specific countries

                                    Currently, I’m receiving many bot visits from the United States and Malaysia. I would like these visits not to be recorded in SalesIQ. I already enabled the option to exclude traffic from cloud service providers, but I’m still receiving bot visits. Ideally,
                                  • Print a document from Zoho Writer via Zoho Creator

                                    If i use the code below i can get writer to create a new document or email it to me but i want to be able to print it directly from the browser and not have to send it via email and then print. Below is the code im using. Attached options form zoho writer
                                  • Es posible cambiar el lenguaje de los modulos del ASAP?

                                    Es posible cambiar el lenguaje de estos textos? Tengo Zoho configurado en español pero aun así me muestra estos textos en ingles:
                                  • System Components menu not available for Tablet to select language

                                    I have attached a screenshot of my desktop, mobile, and tablet menu builder options. I am using 2 languages in my application. Language Selection is an option under the System Components part of the menu, but only for my desktop and phone(mobile). My
                                  • Using workflows to automatically set classification of new tickets

                                    Hello, I am trying to use a workflow to set a classification for a new ticket that is created via an email coming into my desk department. The workflow is working fine if I create a ticket from within desk, however if a ticket is emailed in then this
                                  • Text/SMS With Zoho Desk

                                    Hi Guys- Considering using SMS to get faster responses from customers that we are helping.  Have a bunch of questions; 1) Which provider is better ClickaTell or Screen Magic.  Screen Magic seems easier to setup, but appears to be 2x as expensive for United States.  I cannot find the sender id for Clickatell to even complete the configuration. 2) Can customer's reply to text messages?  If so are responses linked back to the zoho ticket?  If not, how are you handling this, a simple "DO NOT REPLY" as
                                  • Default/Private Departments in Zoho Desk

                                    1) How does one configure a department to be private? 2) Also, how does one change the default department? 1) On the list of my company's Zoho Departments, I see that we have a default department, but I am unable to choose which department should be default. 2) From the Zoho documentation I see that in order to create a private department, one should uncheck "Display in customer portal" on the Add Department screen. However, is there a way to change this setting after the department has been created?
                                  • Show unsubscribed contacts ?

                                    Hello, I would like to display the unsubscribed contacts. Unfortunately, I do not have this subscription type as described in the documentation (https://help.zoho.com/portal/en/kb/marketing-automation-2-0/user-guide/contacts/contact-management/articles/subscription-type-24-1-2024#Subscription_Type_field.)
                                  • Can Zoho Marketing Automation send OTP codes via WhatsApp during user registration?

                                    The flow I would like to implement is: A user signs up in the mobile app and enters their phone number. The system generates a one-time verification code (OTP). The OTP is sent to the user via WhatsApp message. The user enters the code in the app to confirm
                                  • What's New in Zoho Inventory | Q2 2025

                                    Hello Customers, The second quarter have been exciting months for Zoho Inventory! We’ve introduced impactful new features and enhancements to help you manage inventory operations with even greater precision and control. While we have many more exciting
                                  • "Spreadsheet Mode" for Fast Bulk Edits

                                    One of the challenges with using Zoho Inventory is when bulk edits need to be done via the UI, and each value that needs to be changed is different. A very common use case here is price changes. Often, a price increase will need to be implemented, and
                                  • Cloning Item With Images Or The Option With Images

                                    Hello, when I clone an item, I expect the images to carry over to the cloned item, however this is not the case in Inventory. Please make it possible for the images to get cloned or at least can we get a pop up asking if we want to clone the images as
                                  • ZOHO BOOKS - RECEIVING MORE ITEMS THAN ORDERED

                                    Hello, When trying to enter a vendor's bill that contains items with bigger quantity than ordered in the PO (it happens quite often) - The system would not let us save the bill and show this error: "Quantity recorded cannot be more than quantity ordered." 
                                  • Stock count by bin location

                                    Is there a configuration to make a stock count by bin or area and not by product. these is useful to manage count by area Regards
                                  • Server-based Appication API access for Social, Sites, Flow, Pages.

                                    Hello, I am trying to hook up API access for a number of apps and I have hit a wall trying to add these scopes to the API feed. We cannot find the correct way to list the scope for these Zoho apps; Social, Sites, Flow, Writer. Error on web-page comes
                                  • Feature Request: "Send Invitation" Toggle for Events

                                    I am writing to request a critical "Quality of Life" update for the Activities module. Currently, adding people to the Participants field in an Event triggers an automatic email invitation/acceptance tracking with no way to opt-out. For general events
                                  • Zoho Survey: Bulk Exporting Raw Data (CSV/Excel) from 100+ Individual Survey Projects

                                    Hi Zoho Community, I am currently managing a 360-degree evaluation process that involves 100+ individual survey projects (one separate survey for each employee being evaluated). I need to download the raw response data (CSV or Excel) for all 100 surveys.
                                  • Zoho Survey – Page Skip Logic Not Working

                                    Hi everyone, I'm experiencing an issue with the page skip logic in Zoho Survey. Last week, it was working fine, and I haven’t changed anything in the settings. However, today the skip logic is not working at all. I also tried testing it with different
                                  • Brand Studio Projects in Analytics

                                    Hi All, Currently pulling my hair out over trying to link together some social media posts for a reporting dashboard in Analytics, so I thought I'd see if anyone on here had a solution. Our Marketing Team created a LinkedIn campaign in Zoho Brand Studio,
                                  • ERROR: Product type cannot be changed for Items having transactions.

                                    I have mistakenly added a product type as goods for an item that was a digital service. Now when HSN/SAC became mandatory, this brought my attention to this error I did. So I tried changing the product type but it displayed this error message Product
                                  • Combine and hide invoice lines

                                    In quickbooks we are able to create a invoice line that combines and hides invoices lines below. eg. Brochure design         $1000 (total of lines below, the client can see this line) Graphic Design           $600 (hidden but entered to reporting and
                                  • Anyone worked out how to export or screengrab a full heatmap?

                                    I'd love to be able to include a copy of a heatmap in a report but can't work out how to grab the whole thing as there doesn't appear to be an export function? Thanks in advance.
                                  • Introducing Built-in Telephony in Zoho Recruit

                                    We’re excited to introduce Built-in Telephony in Zoho Recruit, designed to make recruiter–candidate communication faster, simpler, and fully traceable. These capabilities help you reduce app switching, handle inbound calls efficiently, and keep every
                                  • Auto-publish job openings on my Zoho Recruit Careers Website

                                    I have developed a script using the Zoho Recruit API that successfully inserts new jobOpening records to my Zoho Recruit website, but my goal is to auto-publish to the Careers Website. The jobOpening field data shows two possible candidates to make this
                                  • [Free webinar] Custom domains for portals in Zoho Creator - Creator Tech Connect

                                    Hello everyone, We’re excited to invite you to another edition of the Creator Tech Connect webinar. About Creator Tech Connect The Creator Tech Connect series is a free monthly webinar featuring in-depth technical sessions designed for developers, administrators,
                                  • Remove my video

                                    Hi, How can I remove my video so that I don't have to see myself. It's weird so I always remove my own video from what I see but cannot find this feature here. Thanks!
                                  • Marking a meeting 'done'.

                                    I would like to somehow mark a meeting 'done' and placed under the contact's page rather than deleting it and having no record of it. Am I missing a button that does this?
                                  • Next Page