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.
Next, we will dive into Usage Billing in Telecom and Internet Service Providers, showing how this model powers those sectors.
Recent Topics
Option to Automatically Update Extensions
Hello Zoho Desk Team, We recently received an email notifying us about an extension update that must be done manually. We’d like to request a feature that allows extensions to be updated automatically without requiring manual intervention. This would
Embed Report with Auto Height
Hello Developers, When we embed report within Page, we are getting one awesome feature to adjust the report height. "Auto" and "Custom' height. This "Auto" option works well when we have no records. But I want to embed report based on some conditions
Zoho Payroll: Product Updates - August 2025
This month’s updates to Zoho Payroll bring enhanced efficiency and smarter features, simplifying payroll management for users in India, UAE, KSA, and US. Read on to explore how these updates can streamline your workflow. Filter Pay Runs by Type (India,
Numerical Rating for Interviewer Assessments
Introducing Numerical Rating, a powerful new addition to interviewer assessments that brings precision and flexibility to candidate evaluations. ✅ What is Numerical Rating? Numerical Rating lets interviewers assign a score for each question in the assessment,
User Tips: Adding Multiple Products (Package) to a Quote v2.0 (with Client Script)
This solution is an improvement on the original idea which used deluge. My solution was posted in the comments are: https://help.zoho.com/portal/en/community/topic/adding-multiple-products-package-to-a-quote The updated version uses client script instead
Are downloadable product available in Zoho Commerce
Hi all. We're considering switching to Zoho Commerce for our shop, but we sell software and remote services. Is there a features for downloadable products? I can't find any information about this. Thank you very much Alice
Need Faster Help? Try Live Chat Support
Hello there, We understand that sometimes, whether you’re facing an issue, exploring a feature, or need quick clarification, sending an email and waiting for a response just doesn’t cut it. You need answers, and you need them now. That’s exactly why we
Custom image for each contact using merge tag
Hi, I'm wondering if it's possible to set up an email campaign to display a different image for each contact using a custom field for the image url. I tried inserting custom html: <img src='$[UD:APP_IMAGE_URL||]$'/> but the editor seemed to reject this and did not actually add anything to the email template. Has anyone got any ideas? cheers, Jeremy
Comment Reactions like a Thumbs Up
Can we please have the ability to emoji react on comments or at the very least, thumbs a comment up? Literally every other project management system out there can support this and it is very much needed to just acknowledge a comment instead of completely
Zoho Mail Search Engine Sucks
Hello There! I really like all the features of Zoho Mail and I believe is way better than Gmail except for the Search Function. I believe Zoho Mail has a very poor search function, if you misspelled a word in the search box, Zoho Mail won't display any
Allow Subtasks and Task Lists to have their own Layout
I'd like to have the ability for subtasks and task lists to have their own layout. A subtask for us doesn't require all the fields that a parent task has. The subtask seems cluttered with all the extra fields. Within a project Task List had different purposes. I'd like the task layout to be different for some task lists.
How to update Customers in Zoho Books through Zoho Flow?
Updating customers in Zoho Flow using a "update customer" action is deleting contact persons in Zoho Books.
Conect chat of salesiq with zoho cliq
Is there any way to answer from zoho cliq the chat of salesiq initiated by customers?
How to transfer credit between customers?
Hi All, We have a slightly odd situation. It happens that we have two separate customers that are related to each other personally. One customer has an amount of credit, and would like to use that credit to pay the *other* customers invoice. How would
Zoho Books Reports: Basic report with total items sold and Cost of goods sold
How can books show a report with Item Name || Qty Sold || Total Revenue || Total Cost of Goods Sold || Margin I need to factor in also invoices that have been credited where customers returned good. This seems like such a basic report, I'm sure I'm missing
The amount entered is more than the balance due for the selected bills."
Hi Team i am trying to record payments for vendors using API and getting this error in response as { "code": 28011, "message": "The amount entered is more than the balance due for the selected bills." } JSON is prepared according to Documentation and
VBA handling named ranges
In VBA I'm able to work with a single cell named range. E.g. Set Jr = Range ("Year").Value. Also other options are working fine, like Range("Year").Address shows $L$3. However a named range refering to multiple cells is not working for me. Eg. tbl_Test
Kaizen #176 - Optimizing the Use of Record ID Variables in Zoho CRM Queries
Hello everyone! Welcome to another week of Kaizen! Since the release of Queries, we have covered Handling Query Variables in Zoho CRM, Serialization and Schema Management, and Leveraging the 'crmAPIResponse' object in Queries in previous posts. Today,
Unbilled Items Report?
Hello! Is there any way to display a list of items that remain unbilled, without creating an invoice for each customer to see if the unbilled items box is displayed? ;-) Ben
Consolidation of Multi currency
Would like to discuss on the possibility of consolidating the ZOHO companies
Landed Cost Allocation / Custom Duty manual data entry
My client is an import business. They must manually enter the duty for each item with landed cost allocation in Bill. This is because customs duties cannot be allocated based on Quantity, Value, Weight, and Dimensions. Manual data entry is highly time-consuming
Territories Just Don't Work
I have been on chat and screenshare support for the past 3 days and am getting no resolution so hopefully, someone here can help me. I am the Super Admin of my organization. We publish books globally. I want to break down the books into territories so
Negative Opening Balance
How can I add Negative Opening balance - meaning a credit balance to a Customer or a debit balance to a vendor? If I go thru Sales-->Customers, and if the opening balance is Rs. 1000 (credit balance), it does not allow me to enter a "minus" sign or mention
Single-Line Invoicing from Sales Order Despite Multiple SKUs Shipped
We deal mostly with Government Tenders And Lets say we got a tender that needs 125 XYZ Laptops Then we found 95 Laptops with a different SKUs and 30 Laptops with different SKUs We talk with the IT department of the government company and they approve
📣📣 Zoho Bookings Schedulathon 2025 is here!
Hey Zoho Bookings fam, We're excited to invite you to our first-ever hackathon: Yes, Zoho Bookings Schedulathon 2025 is live now. This is a virtual event and you can participate anywhere from the world. Businesses should be able to set up meetings from
I want to send out a new newsletter each month
Without rebuilding a whole journey is there a way to create a new newsletter that is sent to an existing journey monthly?
Reinstalling Workdrive Truesync client
Hi, I attempted to update to the beta version of TrueSync, but it was unstable and kept crashing, so I need to revert to the stable version. How do I properly reinstall TrueSync on a Windows PC? I couldn't install the 3.15.x version directly over the
Evaluating Creator; yesterday fine; today connection times out
Yesterday I spent hours creating a new app, and it worked fine. Today I cannot access creator.zoho.com. Is this common? I'm in the evaluation mode, but I'm thinking I'm going to keep looking. It worked from my home computer, and now I'm checking it from my work computer. My work computer always works just fine, so I shouldn't htink there would be special settings or anything. If there are, how to find out what they could be? Using Chrome on Windows XP The error I get is: The webpage at https://creator.zoho.com
Pivot Chart seems to show "old" data - how do I make it update?
I wonder how to make a Pivot Chart "update" its data contents. Here is the background: I need to report a subset of data that is so complicated that it is easier to make a calculation and put the result in a "reporting form", and then display the data from that form. So, I get data from the "original form" GRANTS, make some calculations and put the result in the "reporting form" PERIOD. Now I can watch the result in a list called LIST, which works fine. The list LIST shows that form PERIOD contains
Upcoming Changes to LinkedIn Parsing in Resume Extractor
Starting 31 July 2025, the Zoho Recruit Resume Extractor will no longer support direct parsing of candidate data from LinkedIn profiles. Why Is This Change Needed? In accordance with LinkedIn’s platform policies, extracting profile data through browser
how to create view in leads module to that will show all leads + converted leads?
is it possible to make custom view that combine all leads + converted leads? how to do that
Reply and react to comments
Hi everyone! We're excited to bring to you a couple of new features that'll make your sprint process simpler. A cloud application brings with it an array of social media features that can be efficiently used in your organizational setup. As an agile scrum
Announcing Early Access to "Zoho CRM for Everyone" — A new and exciting update to Zoho CRM
Zoho CRM For Everyone is now officially available to all customers, and the Early Access Program has come to a close. We want to extend our sincere thanks to everyone who participated in the program. Your valuable feedback played a key role in shaping
Avalara Sales Tax integration - AVATAX
Just wondering if anyone else is having troubles with this integration? Seems as though Avalara changed their billing process, unbeknownst to Zoho, and now ALL transactions are counted by Avalara, not just transactions in a taxable jurisdiction. This caused a huge price adjustment billed to us by Avalara within a month of us signing up. And Avalara is not cheap to begin with! Avalara has been great in waiving that increase, but there seems to be no fix. Zoho is aware of the problem, but slow
Invalid value passed for description
Dear Sir, When I am entering the purchase bill , the following message showing "Invalid value passed for description" what should I do ? I am attaching screenshot. With Regards, Harish harish@cracku.in 7978841636
Zoho Creator - 2024 Release Projection 1
Hello everyone! As we enter 2024, we'd like to extend our warmest wishes for success and prosperity. Your fantastic response to our Product Roadmap page last year has been incredibly motivating. Continuing on this path, we're excited to share a glimpse
Automation Assistance for Zoho Form Integration and Workflow
Hi, We are currently using a Zoho Form to send out our Global Credit Application and would like to automate the process further. Specifically, we’d like the ABN number submitted through the form to automatically populate the GST/VAT Number field in Zoho
COQL does not return queryable value if the result set is empty
See linked video for running code illustration of the problem: https://workdrive.zohoexternal.com/external/d49bb40033b43b288d56fdf843095b7c65b28391d3ec5d09c854f416d853003d Moderation update: We are appending the comment that was removed, to add context
Zoho CRMでの商談の管理のしかたについて初歩的な質問です。
先月からZoho CRMを試験的に導入して運用しています。 商談の管理(運用?)の仕方について教えてください。 商談の数が増えてくると、ダッシュボードの「ステージ別進捗状況」にどんどん過去の商談が蓄積されてくると思うのですが、 現在動きのあるものを中心に確認したくなる気がします。 そのあたりについては、どのように運用が一般的なのでしょうか? アドバイスいただけるととてもありがたいです。 よろしくお願いします。
Composite Items & Purchase Orders
The Composite Item is great way to bundle different products and services into a single line and sell it as a single line item in Estimates, Sales Orders and Invoices. However, on the other side - i,e,. Purchasing - this item creates quite a bit of a
Next Page