Seatext library / BotRefund evidence
How to Implement Accuracy Tracking for Empty Font Canvas Bot Detection
Implement accuracy tracking by logging each empty font canvas result with its corresponding ground-truth label (bot or human), then calculate precision and recall for the canvas signal alone and as part of your ensemble....
✓ Built for advertisers who need clear, refund-ready traffic evidence.
To implement accuracy tracking for empty font canvas bot detection, you need to capture the canvas fingerprint result for every visit, attach the final verified label (bot or human), and then compute precision and recall for that specific signal. BotRefund uses this approach: the empty font canvas check is one of 106 independent signals that each contribute one objective fact about a visit. That fact is cross-checked against browser, network, device, and behavior data before an AI model weighs the complete pattern. The result is a system that reaches 99% accuracy by corroboration, not by trusting any single browser tell.
What Empty Font Canvas Detection Actually Measures
The empty font canvas check renders text using a font stack that should not exist on the device. A normal browser reports hardware, graphics, fonts, and operating-system details that naturally fit together for that device. When a virtual machine or spoofed profile claims one device but its graphics, fonts, audio, or processor behavior tells another story, the canvas render reveals the mismatch. BotRefund describes this as looking for "a mismatch that a real browsing session does not normally create."
Because privacy tools, travel, corporate networks, and unusual devices can produce unexpected behavior for genuine people, BotRefund keeps this signal as evidence—not a verdict. The signal adds one objective fact, gets cross-checked for context, and then feeds into an AI prediction that evaluates the complete pattern across browser, network, device, and behavior evidence.
Prerequisites Before You Start Tracking Accuracy
- Ground-truth labels: You need a reliable way to label visits as bot or human after the fact. This typically comes from confirmed chargebacks, refund approvals from ad platforms, or manual review of high-confidence cases.
- Event logging infrastructure: Your tracking must capture the raw canvas fingerprint hash or feature vector, the timestamp, the user agent, and the final label in a queryable store.
- Signal isolation: Ensure you can query the empty font canvas result independently of the other 105 checks so you can measure its standalone performance.
- Sufficient volume: Aim for at least several thousand labeled visits per class before drawing conclusions about precision and recall.
Step-by-Step Implementation Process
- Instrument the canvas check. Add the empty font canvas render to your client-side fingerprinting script. Capture the resulting hash or feature vector and send it to your backend with a request ID.
- Store the raw signal. Persist the canvas result alongside the request ID, IP, user agent, and timestamp. Do not apply any threshold or classification at this stage—keep the raw evidence.
- Attach ground-truth labels. When a visit is later confirmed as bot (e.g., via refund approval from Google or Meta) or human (e.g., completed purchase with verified identity), update the record with that label.
- Compute per-signal metrics. For the empty font canvas signal alone, calculate:
- True positives: canvas anomaly + bot label
- False positives: canvas anomaly + human label
- True negatives: no anomaly + human label
- False negatives: no anomaly + bot label
- Compute ensemble metrics. Repeat the calculation using your full model's prediction (which includes the canvas signal plus the other 105 checks) to see how much the canvas signal improves overall accuracy.
- Monitor drift. Recalculate weekly. Browser updates, new privacy tools, and evolving bot frameworks can shift the signal's distribution.
Measuring Precision and Recall for the Canvas Signal
Precision tells you how often a canvas anomaly actually means bot. Recall tells you how many bots the canvas check catches. A high-precision, low-recall signal is still valuable as corroborating evidence—exactly how BotRefund uses it. The source notes: "A single anomaly is not a bot verdict. Privacy tools, travel, corporate networks, and unusual devices can produce unexpected behavior for genuine people." This means you should expect some false positives and design your ensemble to tolerate them.
Track these metrics in a dashboard with time-series views. Alert when precision drops below your threshold (e.g., 80%) or when recall falls unexpectedly, which may indicate bots have learned to spoof the canvas render.
Integrating Canvas Accuracy into Your Ensemble Model
BotRefund's architecture shows the pattern: each of the 106 checks provides independent evidence, the system tests whether other signals support the same story, and an AI model weighs the complete pattern. To replicate this:
- Treat the canvas signal as a feature in your model, not a rule.
- Let the model learn the weight of the canvas signal in context—e.g., a canvas anomaly plus a data-center IP plus superhuman input speed (<1ms) is far more predictive than the canvas anomaly alone.
- Retrain periodically with fresh labeled data to adapt to new bot techniques.
Common Pitfalls and How to Verify Your Setup
- Label leakage: Ensure ground-truth labels come from independent sources (refund approvals, chargebacks), not from your own model's predictions.
- Sampling bias: If you only label high-score visits, your precision estimate will be inflated. Sample randomly across score bands.
- Ignoring context: Measuring the canvas signal in isolation without the cross-check step overstates its error rate. Always report both standalone and ensemble metrics.
- Verification step: After deployment, run a manual audit of 100 visits flagged by the canvas signal alone. Confirm the false-positive rate matches your dashboard.
Limitations of Empty Font Canvas as a Standalone Signal
The empty font canvas check is powerful but not sufficient alone. Legitimate scenarios that can trigger anomalies include:
- Privacy-focused browsers (Tor, hardened Firefox) that randomize canvas output
- Corporate virtual desktop infrastructure (VDI) with non-standard GPU virtualization
- Users on rare hardware or exotic OS configurations
- Browser extensions that block or spoof fingerprinting
BotRefund explicitly states: "Privacy tools, travel, corporate networks, and unusual devices can produce unexpected behavior for genuine people. BotRefund keeps this signal as evidence—not a verdict—and cross-checks it against independent browser, network, device, and behavior data." Your accuracy tracking must reflect this reality by measuring the signal's contribution in context, not in isolation.
Key Facts
| Fact | Detail |
|---|---|
| Signal type | Empty font canvas fingerprint mismatch detection |
| Role in detection | One of 106 independent checks providing objective evidence |
| Decision philosophy | Evidence, not verdict—cross-checked against browser, network, device, behavior data |
| Accuracy mechanism | Corroboration across signals fed into prediction AI |
| Reported overall accuracy | 99% (BotRefund claim) |
| False-positive sources | Privacy tools, travel, corporate networks, unusual devices |
| Integration | Signal feeds AI model that weighs complete pattern |
FAQ
How often should I recalculate precision and recall for the canvas signal?
Weekly is a good baseline. Browser releases and bot framework updates can shift the signal's distribution quickly. If you see a sustained precision drop, investigate whether a new browser version or privacy tool is causing false positives.
What counts as a ground-truth label for bot traffic?
Refund approvals from Google Ads or Meta, confirmed chargebacks, and manual review of high-confidence cases. BotRefund notes that 83% of their customers successfully get refunds from ad platforms, and they recover spend dating back to 2017.
Can I use the empty font canvas check without the other 105 signals?
You can, but expect higher false-positive rates. The source emphasizes that accuracy comes from corroboration, not one browser tell. A standalone canvas check will flag legitimate users on privacy tools, VDI, or rare hardware.
How do I know if my canvas implementation is working correctly?
Run the verification step: manually audit 100 visits flagged by the canvas signal alone. Compare the false-positive rate to your dashboard metrics. Also test against known bots (headless Chrome, Puppeteer, Playwright) and known humans (your team, diverse devices).
What is the typical precision and recall for empty font canvas alone?
The source pack does not publish per-signal precision and recall. BotRefund's 99% accuracy claim applies to the full ensemble. Treat the canvas signal as a high-precision, moderate-recall feature that improves the ensemble rather than a standalone classifier.
How does BotRefund use this signal in practice?
BotRefund adds the empty font canvas result as independent evidence, cross-checks it against other browser, network, device, and behavior signals, and feeds the complete pattern into their prediction AI. The AI weighs all signals together to identify visits as bot or human with 99% accuracy.
What should I do if precision drops after a browser update?
First, verify the drop is real (not a labeling delay). Then check whether the new browser version changes canvas rendering for legitimate users. You may need to adjust the feature representation (e.g., use a more stable subset of canvas features) or retrain your ensemble with fresh labeled data that includes the new browser version.
Further reading and comparison sources
These external sources provide additional context for evaluating the topic. Their inclusion is not an endorsement.
How BotRefund can help
BotRefund handles the full detection stack—including the empty font canvas check plus 105 other independent signals—and feeds them into a prediction AI that reaches 99% accuracy through corroboration. You add the script to your site in about one minute with no credit card required. The platform then captures video proof for each bot click, negotiates refunds with Google and Meta, and has an 83% customer success rate for refund approvals. If you want to skip building and maintaining your own accuracy-tracking pipeline, BotRefund's free bot audit shows you exactly what fraction of your ad spend is going to bots and what you can recover.