Billing Management: #6 Usage Billing in SaaS

Billing Management: #6 Usage Billing in SaaS

Imagine a customer shuffling across multiple subscriptions, a streaming service, a music app, cloud storage, and a design tool. Each one charges a flat monthly fee, regardless of how much or how little they use. Some months, the customer barely opens the subscriptions, yet the bill is the same. This is what we call subscription fatigue, meaning resistance from the customer towards fixed, recurring charges that don't match their actual usage.   

For SaaS, subscription fatigue is more than a buzzword. It's a business risk as a flat rate may appear overcharging for one, but others enjoy paying less for their high usage. This imbalance leads to churn, lost revenue and customer grievances.

The solution lies in usage billing, where the customer pays based on what they consume. By aligning cost with value, businesses can increase fairness and unlock sustainable growth. 
While the principle is simple, it requires a reliable way to track and monetise usage properly.


Zoho Billing Makes Usage Billing Seamless

Zoho Billing provides SaaS businesses with all the tools needed to implement usage-based pricing effectively. Key capabilities that Zoho Billing offers that work effectively for SaaS businesses include:

  • Flexible Pricing Tiers: Businesses can create multiple plans with different prices and list them on their websites for direct signup.

  • Zero value Plan: For charging customers purely based on usage alone, businesses can create $0 value plan and associate usage addons to charge appropriately.

  • Addons: Attach both flat-rated addons and usage-based addons to the subscription.

  • Hybrid Model: Combine a flat subscription fee with usage-based addons to monetise additional consumption fairly.

When a usage addon is attached to a subscription, Zoho Billing ensures that usage is tracked, recorded and billed accurately.


Scenario 1:

Sam runs a small consulting firm and uses a mailing application to communicate with his clients. His plan costs $200 and includes 500 GB of storage. Sam stays within the limit most months; however, with many attachments, proposals and reports during a particular month, his mailbox usage exceeds by another 100 GB. The mailing application provides a usage addon for $0.50/GB for the additional usage instead of offering a rigid higher value plan.


Item

Value

Base Subscription

$200

Included Invoices

500

Actual Usage

600

Extra Usage

100

Unit Price for Extra Usage

$0.50/GB

Additional Charge

$50

Total Invoice Value (Base Price+Added Usage)

$250


The billing team records the extra 100 GB usage in Zoho Billing using the manual usage entry method and nothing more. The system automatically calculates $50 overage fee and appends it to the invoice to make the renewal invoice for the period $250.

Scenario 2:
Imagine Smith Enterprise uses a cloud analytics SaaS product. The contract covers a base subscription plan and two usage add-ons: API calls and storage. The base plan costs $500/month and includes 100,000 API calls and 500 GB storage. For every API call they make, an extra $0.01 per call will be charged. Similarly, for extra storage, $0.10 will be charged per GB. 

During a particular month, the company consumes 250,000 API calls and 750 GB of storage, clearly above the usage limit. A subsequent invoice is created, and the charge based on the usage data is added to the base subscription value.

Addon 1

Addon 2

Item

Value

Item

Value

Included API Calls

100,000

Includes Storage

500 GB

Actual Usage

250,000

Actual Usage

750 GB

Extra Usage

150,000

Extra Usage

250

Unit Price

$0.01/call

Unit Price

$0.10/GB

Additional Charge

150,000x$0.01= $1500

Additional Charge

250x$0.10= $25

 

Item

Charges

Base Subscription

$500

API Call Overage

$1500

Storage Overage

$25

Total Invoice

$2025


The company exports the API call logs and storage usage data into a CSV file that can be imported into Zoho Billing. Zoho Billing digests both records, applies the pricing rule separately for each add-on, and generates a consolidated invoice.

Scenario 3: 
Roy runs a digital marketing agency offering various marketing campaigns across social media platforms. Roy owns a SaaS application that generates posts and charges $1.5 per post design. No fixed base price for this, but their clients are purely charged based on the number of posts made. During festive sessions, Roy's team schedules a maximum of 450 posts for a client.

Item

Value

Base Subscription

$0

Rate per post

$1.5

Actual Usage

450 posts

Total Invoice Value ($1.5x450)

$675

 

Using Zoho Billing, Roy records the usage manually or by importing them into the system. With no base price, the platform automatically calculates the total invoice based on the usage. Roy receives a clear invoice for $675, reflecting the value consumed.

SaaS Usage Billing Simplified

Usage Billing ensures that customers pay only for what they consume, whether extra storage, extra API calls, or purely based on the number of posts made. With Zoho Billing, SaaS businesses can seamlessly manage complex and straightforward usage billing scenarios. Adding usage to Zoho Billing is simplified through different methods. It can be added manually if there are fewer subscriptions, and usage data can be imported if there are more subscriptions and usage add-ons. Usage can also be pushed using APIs into Zoho Billing.

Post your use cases in the comments and find the best way to handle them using Zoho Billing.


NotesNext, we will dive into Usage Billing in Telecom and Internet Service Providers, showing how this model powers those sectors. 

    • 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
    • Recent Topics

    • Analytics <-> Invoice Connection DELETED by Zoho

      Hi All, I am reaching out today because of a big issue we have at the moment with Zoho Analytics and Zoho Invoice. Our organization relies on Zoho Analytics for most of our reporting (operationnal teams). A few days ago we observed a sync issue with the
    • text length in list report mobile/tablet

      Is there a way to make the full text of a text field appear in the list report on mobile and tablet? With custom layouts, the text is always truncated after a certain number of characters.
    • Automation #4 - Auto Delete Tickets based on Rules

      This is a monthly series in which we pick some common use cases that have been either discussed or most asked about in our community and explain how they can be achieved using one of the automation capabilities in Zoho Desk. Unwanted tickets spamming
    • Zoho Community Digest — Enero 2026

      ¡Hola, comunidad! 🌟 Aquí os traemos las novedades más interesantes de Zoho durante este mes de enero, incluyendo actualizaciones de productos, integraciones y un recordatorio sobre los workshops certificados que vuelven a España. 🎓 Eventos y Comunidad
    • Automation #3 - Auto-sync email attachments to tickets

      This is a monthly series where we pick some common use cases that have been either discussed or most asked about in our community and explain how they can be achieved using one of the automation capabilities in Zoho Desk. Most of our customers use email
    • Automation #11 - Auto Update Custom Fields with Values from Emails

      This is a monthly series designed to help you get the best out of Desk. We take our cue from what's being discussed or asked about the most in our community. Then we find the right use cases that specifically highlight solutions, ideas and tips to optimize
    • Automation #13 - Auto assign tickets based on agent shift time

      This is a monthly series designed to help you get the best out of Desk. We take our cue from what's being discussed or asked about the most in our community. Then we find the right use cases that specifically highlight solutions, ideas and tips to optimize
    • Automation #14: Capture Jira Issue Key/ID in a Ticket Custom Field

      Hello Everyone! This month's edition brings you a custom function to consolidate your records associated with Jira integration. Jira integration enables support engineers and R&D units to collaborate seamlessly on feature development, product improvement,
    • Automation #16: Automate Ticket Reopening on Scheduled Timestamp

      Hello Everyone! This edition uncovers the option to schedule reopening a ticket automatically. Zylker Finance tracks insurance policyholder activities through Zoho Desk. For policyholders who pay monthly premiums, tickets are closed upon payment completion.
    • Automation#19:Auto-Close Tickets Upon Task Completion

      Hello Everyone! We’re excited to bring you another custom function this week. In this edition, we’ll show you how to automatically close tickets when all associated tasks are marked as completed. Let’s see how ZylkaPure, a leading water filter company,
    • Automation #15: Automatically Adding Static Secondary Contacts

      Rockel is a top-tier client of Zylker traders. Marcus handles communications with Rockel and would like to add Terence, the CTO of Zylker traders to the email conversations. In this case, the emails coming from user address rockel.com should have Terence
    • Improved UX design for Projects CRM integration

      The current integration embeds the entier projects inteface into the CRM this is confusing and allows users to get lost. For example as a user i navigate to an account and go down to the related projects list and want to get information about a specific
    • Link Purchase Order to Deal

      Zoho Books directly syncs with contacts, vendors and products in Zoho CRM including field mapping. Is there any way to associate vendor purchase orders with deals, so that we can calculate our profit margin for each deal with connected sales invoices
    • Transformer vos stocks en décisions intelligentes avec Zoho Inventory et Zoho Analytics

      Zoho Inventory permet de suivre facilement les niveaux de stock et d’anticiper les restockages. Pour de nombreuses entreprises, cela suffit à gérer les opérations au quotidien. Mais à mesure que l’activité se développe, cette clarté peut commencer à montrer
    • Zoho Commerce - Poor Features Set for Blogging

      Hi Zoho Commerce team, I'm sure you will have noticed that I have been asking many questions about the Blogs feature in Commerce. I thought that it would be useful if I share my feedback in a constructive way, to highlight the areas which I feel need
    • Security Enhancements | Migrate to the Updated Policies

      Hello everyone, Zoho Directory's security policies have been updated and reorganized into three new policies with features that enhance the overall organization security. These policies provide a stronger and more secure sign-in methods and improve the
    • Bring Zoho Shifts Capabilities into Zoho People Shift Module

      Hello Zoho People Product Team, After a deep review of the Zoho People Shift module and a direct comparison with Zoho Shifts, we would like to raise a feature request and serious concern regarding the current state of shift management in Zoho People.
    • Facturation électronique 2026 - obligation dès le 1er septembre 2026

      Bonjour, Je me permets de réagir à divers posts publiés ici et là concernant le projet de E-Invoicing, dans le cadre de la facturation électronique prévue très prochainement. Dans le cadre du passage à la facturation électronique pour les entreprises,
    • Quick Create needs Client Script support

      As per the title. We need client scripts to apply at a Quick Create level. We enforce logic on the form to ensure data quality, automate field values, etc. However, all this is lost when a user attempts a "Quick Create". It is disappointing because, from
    • How to block a WhatsApp user for sending spam

      Is there a way to block those whatsapp users that just come to play and annoy our service, they also spam us. We have a waba service with sales iq
    • Inquiry regarding auto-save behavior for Zoho Sign Embedded Sending

      Dear Zoho Support Team, I am currently integrating Zoho Sign's Embedded Sending functionality using iframes on my website. I would like to know if there is a way to ensure that the document state (including any added fields) is automatically saved as
    • Introducing Connected Records to bring business context to every aspect of your work in Zoho CRM for Everyone

      Hello Everyone, We are excited to unveil phase one of a powerful enhancement to CRM for Everyone - Connected Records, available only in CRM's Nextgen UI. With CRM for Everyone, businesses can onboard all customer-facing teams onto the CRM platform to
    • Automation#17: Auto-Create Tasks in Zoho Projects Upon Ticket Creation in Zoho Desk

      Hello Everyone, This edition delivers the solution to automatically create a task in Zoho Projects when a ticket is created in Zoho Desk. Zylker Resorts uses Zoho Desk for bookings and handling guest requests. Zylker resorts outsources cab bookings to
    • Automation#20 : Auto-Add Ticket Tags based on Keywords

      Hello Everyone! Welcome to unveiling custom functions on our Community series. This week's post lets you add tags to your tickets automatically based on the keywords in the ticket subject and the ticket thread. Discover how this custom function helps
    • Automation#21: Track Ticket Transfers Across Departments

      Hello Everyone! With Halloween just around the corner, we'd like to let you know the Zoho Desk team is always there to sweep away your customer service troubles! This week, we’re excited to introduce a custom function that tracks tickets moved between
    • Email Integration - Zoho CRM - OAuth and IMAP

      Hello, We are attempting to integrate our Microsoft 365 email with Zoho CRM. We are using the documentation at Email Configuration for IMAP and POP3 (zoho.com) We use Microsoft 365 and per their recommendations (and requirements) for secure email we have
    • Homepage not assignable to group

    • MS Teams for daily call operations

      Hello all, Our most anticipated and crucial update is finally here! Organizations using Microsoft Teams phone system can now integrate it effectively with Zoho CRM for tasks like dialling numbers and logging calls. We are enhancing our MS Teams functionality
    • Automation#22 Track Ticket Duration at Specific Status

      Hello Everyone! Welcome back to the Community Learning Series! Today, we explore how Zylker Techfix, a gadget servicing firm, boosted productivity by tracking the time spent at a particular ticket status in Zoho Desk. Zylker Techfix customized Zoho Desk’s
    • Automation#23: Automate Guided Conversations in Zoho Desk with Business Hours

      Hello Everyone, This week's edition introduces a custom function designed to automate Guided Conversations in Zoho Desk, based on your business hours. With this feature, you can align the bot's behavior with your business schedule, ensuring a smooth and
    • Address changes in quote form

      When entering a quote, the first piece of information required is the Account, which properly populates the billing and shipping address fields. Then I use the lookup function to select a contact, and when I do, the billing and shipping addresses are
    • Automation#24: Auto-Update custom field from Accounts to Tickets

      Hello Everyone! Welcome back to the Community Learning Series! This episode dives into how Zylker Techfix streamlines account-related ticket references. Previously, employees had to manually check account details to retrieve specific customer information,
    • Kaizen #227 : Client Script Support for List Page (Canvas)

      Hello everyone! Welcome to another week of Kaizen. In today's post lets see how Client Script can be used in Canvas List Page to mask sensitive information from specific roles and add colors to Canvas List Page records based on custom criteria.This use
    • Implement Date-Time-Based Triggers in Zoho Desk

      Dear Zoho Desk Support Team, We are writing to request a new feature that would allow for the creation of workflows triggered by specific date-time conditions. Currently, Zoho Desk does not provide native support for date-time-based triggers, limiting
    • Automation#25: Move Tickets to Unassigned When the Owner Is Offline

      Hello Everyone, Welcome to this week's Community Series! 'Tis the holiday season—a time when work often takes a brief pause. The holiday spirit is in full swing at Zylker Techfix too, with employees taking some well-deserved time off. During this period,
    • Automation#27: Retain Ticket Owner on Moved Tickets

      Hello Everyone! This week, we present to you a custom function that retains the ticket owner when a ticket is moved from one department to another. Here’s more to help you understand the custom function: At Zylker Techfix, Alex, the Support Engineer manages
    • Automation#28 Notify Agents on Article Expiry

      Hello Everyone! This week, we’re bringing you a feature that notifies your team when articles in the Knowledge Base are set to expire to keep your content relevant and helpful for customers. The Zoho Desk's Knowledge Base is an asset for customers to
    • Automation#29 Retain ticket status on moved tickets

      Hello Everyone, Hear out Zylker Techfix’s Success Story on Smoother Ticket Transitions! Zylker Techfix, a gadget servicing firm committed to quick repairs and timely deliveries, faced a challenge when ticket statuses changed automatically while moving
    • Automation#32:Auto Add New Portal Users to the Help Center User Groups

      Hello Everyone, Introducing a custom function that automates the process of adding new portal users to Help Center user groups, making user management effortless! By default, Zoho Desk allows you to assign new portal users to groups manually. But with
    • Automation#34 : Automate Email threading for Ticket notification

      Hello Everyone, It's been a while since we've presented an automation. However, our community has been buzzing with ideas, use cases, and discussions with our community experts and Ask the Experts session. So, here we are again, presenting an automation
    • Next Page