Recurring Charge Highlighter on Statements
Free to download on every platform. Comes pre-installed on BotFone, BotPad and BotFlip — with extra free apps included.
About this app
WHAT IT DOES
This script scans bank statements, credit card statements, and transaction lists to identify recurring charges—subscriptions, memberships, and other regular payments that appear multiple times with similar amounts. It detects merchant names that occur repeatedly with consistent pricing, highlights them with a visual indicator directly on the page, groups them by merchant, and displays a floating overlay showing your total monthly recurring spend and a complete list of identified charges. Perfect for auditing your subscriptions, finding forgotten recurring payments, and understanding your monthly financial commitments.
WHERE IT RUNS
The script works on any page displaying financial transactions—online banking portals, credit card statement pages, accounting software, expense tracking apps, and any page with a list of transactions. It detects transaction rows using common selectors and works on any website regardless of framework. The script is compatible with major banking platforms and financial tools.
HOW TO USE
After installation, the script automatically scans the page for recurring charges. A floating badge shows your total monthly recurring spend. Click the badge to toggle the full overlay with a breakdown by merchant, average amount, and occurrence count. Open the panel to customize: enable or disable the overlay and badge, choose overlay position (top-right, top-left, bottom-right, bottom-left), adjust opacity, select dark or light theme, set currency symbol, adjust minimum occurrences (2-10) and amount tolerance (5-50%) for detection sensitivity, choose highlight color, and set badge position. Click "Scan Now" to manually re-scan, or "Clear Highlights" to remove visual indicators.
TECHNICAL MECHANISM
The script uses a multi-stage recurring charge detection pipeline. First, it scans the DOM for transaction rows using a comprehensive set of selectors (tr, .transaction, .row, .entry, .charge, .payment). Second, it extracts merchant names using regex pattern matching for capitalized text (2-40 characters with letters, spaces, dots, and hyphens) and extracts amounts using currency symbol regex. Third, it groups transactions by merchant name and filters groups that meet the minimum occurrence threshold (default 2). Fourth, it calculates the average amount for each merchant and determines consistency by checking if all amounts fall within the configured tolerance percentage (default 10%) of the average. Fifth, it identifies consistent patterns as recurring charges. Sixth, it highlights matched transactions with a colored outline and background using CSS classes. Seventh, it aggregates the average amounts into a total monthly spend and renders the overlay with a breakdown of each recurring charge.
THE PANEL
The settings panel is fully draggable and can be positioned anywhere on your screen. It automatically snaps to the nearest edge when released, keeping your workspace organized. The panel can be collapsed to a small bubble showing only a gear icon, and restored with a single click. Its position is remembered across page reloads using GM_setValue. The panel also responds to the Escape key, which instantly hides it until you click the bubble again. All settings are saved immediately when changed and persist across browser sessions.
PLEASE NOTE
This script requires the free BotGentz extension to run. The script detects patterns based on merchant name and amount consistency and may not capture all recurring charges, especially those with variable amounts or irregular merchant names. The script does not access, store, or transmit any personal data, financial information, or browsing history. All processing happens locally in your browser and never leaves your device.