Disk Space and Bandwidth Overage Billing

From WHMCS Documentation

  • Overage billing allows you to bill based on the disk and/or bandwidth used for a given month over and above the base amount allowed with a package
  • Products can still have a base price or the price and soft limits can be set at zero to bill solely based on the usage
  • Usage charges are calculated on the last day of each month
  • They can be invoiced on the last day of the month independantly from the related product or added as billable items to be included on the next invoice the client gets sent
  • Native support is included for cPanel, Plesk & DirectAdmin modules using the values returned from the respective control panel API's but this feature can also be used by developers with their own control panels passing usage data direct to the WHMCS database

How to Configure

  • The configuration of overage billing is done on a per product basis on the Other tab of product config (Setup > Products/Services > Edit > Other tab).
  • To enable it for a product, begin by ticking the Overages Billing checkbox
  • Next enter the Soft Disk Limit and Soft Bandwidth Limit which should be the amounts included with the package - anything over this amount is what's considered the over usage - can be zero to bill solely based on use
  • Then enter the cost for disk space and bandwidth in your default currency into the Disk Overages Cost and Bandwidth Overages Cost fields - these can be set up to 4 decimal places and will be multipled by the overused amount.
  • Choose the unit overages will be measured in (Megabytes, Gigabytes or Terabytes)
    1 GB = 1024 MB, 1 TB = 1024 GB.
  • Click save to complete the changes
  • Navigate to Setup > Automation Settings and use the Overage Billing Charges option to choose when clients are invoiced for their overage usage.


Overages are calculated with a precision of one tenth of one gigabytyte. For example, an overage of 1.5 GB at $1.00 per GB will bill $1.50.

If you have selected for WHMCS to add the overage charge to the next invoice, it will be added as the final line item on the invoice. Or if the invoice independently option was selected, it will be the sole item on the invoice.

Overage invoice line items are generated with a format as follows:

Shared Hosting - whmcsdemo.com (01/05/2014 - 31/05/2014)
Total Disk Usage = 1.5 GB - Overage Charge = 0.5 GB @ 1.50/GB
Shared Hosting - whmcsdemo.com (01/05/2014 - 31/05/2014)
Total Bandwidth Usage = 7.5 GB - Overage Charge = 2.5 GB @ 2.50/GB

Custom Fields and Configurable Options

The Overage Billing limits defined for a Product/Service can be overridden by Product Custom Fields or Configurable Options named either "Disk Space" and/or "Bandwidth". The values provided will instead be used when performing overage calculations.

For example, if the soft disk limit was set to 10MB, and a configurable option was set to 20MB, then the client would only be charged for overage once they go above 20MB.

When setting up a Configurable Option for the purpose of overriding Overage Billing Limits the Option Type can be any which returns a numerical value; this would be the Drop Down, Radio, and Quantity types. While only numerical values can be used as options the Friendly Display Names functionality can be used to display non-numerical values to the customer.

When setting up a Product Custom Field for the purpose of overriding Overage Billing Limits the Field Type can be any which returns a numerical value; this would be the Text Box, Drop Down, and Text Area types. Additionally, it is important to note that values defined by a Configurable Option will override values set by a Product Custom Field.


If you only wish to charge for one of the items (ie. charge only for bandwidth overages) set the soft disk limit to a very high value, say 999999999. That way the user will never exceed it and thus never be charged for any disk overage.

If you'd like to have WHMCS automatically suspend a service when its overage costs are not paid, the Include on the Next Invoice option must be selected at Setup > Automation Settings.

Overage billing may only be configured in your system's default currency. WHMCS will automatically convert overage prices into a client's currency using the rates listed at Setup > Currencies.