Technical Tip: How to implement daily internet data quota per user or per IP
| Description | This article describes how to enforce a daily internet usage quota (for example, 500 MB per day that automatically resets at midnight) for end users or source IPs. |
| Scope | Applies to FortiGate models running FortiOS v7.2.0 and above. Works for both authenticated users and unauthenticated traffic (tracks by source IP). Counts only HTTP/HTTPS traffic that passes through proxy-based web filtering + SSL inspection. Non-web protocols are not counted. |
| Solution | The solution uses the built-in Category Usage Quota feature inside a proxy-based Web Filter profile. FortiGate does not have a global 'total traffic quota' for all protocols, but the Category Usage Quota inside a Web Filter profile achieves the desired result for typical internet usage.
Step-by-Step Configuration:
config webfilter category edit "All-Web-Traffic" set members "Bandwidth_Consuming" "General_Interest" "Streaming" "Social_Media" ... (add all desired categories) next end
config webfilter profile
config firewall policy
Configure the Category usage Quota using the GUI:
Navigate to Security Profiles -> Select Web Filter > edit the Web Filter Profile. Enable proxy-based feature settings.
Select Create New in the Category Usage Quota.
Select the category that should be allowed in the Quota. Set the type to Traffic with a bandwidth of 500MB. Select OK to apply the settings.
Once the settings above have been configured, create a new policy and enable the web filter feature on the policy and call the profile 'Daily-Quota-500MB' and save the configuration.
Important notes and limitations:
|




