Open source · Apache-2.0

Keep the records. File it yourself.

The SaveMyBudget Toolkit records every Google Ads click on your site, runs ten documented detection rules, and builds the package Google's invalid-clicks form asks for. It runs as one Docker container on a server you control.

git clone https://github.com/10xlabsio/savemybudget-toolkit && cd savemybudget-toolkit && cp .env.example .env && docker compose up -d
Why we opened it — a note from the founder

What it does

The tag

The open-source SDK is under 3 KB, has no dependencies, never reads page content, and in this build never contacts SaveMyBudget.

The collector

Receives beacons, enriches them offline with network, country and browser data, and keeps them for 90 days.

Ten rules

Each rule is documented with its default and known false positives.

The claim package

Builds evidence.csv, a factual summary, and a field-by-field guide to Google's form.

What it doesn't do

  • It doesn't connect to your Google Ads account.
  • It doesn't file claims — you do, and Google decides.
  • It doesn't put a price on flagged clicks.
  • It doesn't block anything. It can export an IP list you may choose to use.

Toolkit or service?

ToolkitService
Where it runsYour serverOurs
Tag installYou, with the docsWe install it with you
Google Ads connectionNoYes — campaigns and cost
Detection rulesTen, documented defaultsMore, calibrated across accounts
ClaimsYou fileWe prepare, review and file
PriceFree, Apache-2.025% of credits Google confirms; nothing if Google confirms nothing

Same lineage, different job. The tuning, the cross-account signals and the filing stay with the service.

Zaštitite proračun oglasa

Telemetry

Anonymous usage counts only, every field listed in TELEMETRY.md, and one environment variable turns it off. The tag on your site never contacts us.

Read TELEMETRY.md

Contribute

Issues and pull requests are welcome. Changes to rule defaults go through a discussion first. Security reports: see SECURITY.md.