Industry guide · Custom Software

Sanctions Screening and Watchlist Filtering: Tuning False Positives Without Missing a Real Name

Sanctions Screening software visual showing shield ban, scan search, and clock alert.
The short answer

If your screening hits are clearing late enough to threaten payment cutoffs, and you cannot evidence why your matching thresholds sit where they do, the build worth funding is usually the tuning and disposition layer rather than a new filter. A first release covering list ingestion with change tracking, a configurable matching pipeline and an operations hit queue with structured dispositions runs $80,000 to $190,000 and ships in 12 to 18 weeks in Digital Heroes delivery experience. A full platform adding inline payment screening, historical replay for threshold testing, good guy list governance and blocked property reporting runs $240,000 to $550,000 over 8 to 16 months. If you are a small institution screening a few hundred names a day in batch, buy a screening tool. Building your own name matching is not where your risk is.

Why screening is an operations problem with a legal edge

It is 15:20 and the wire room has forty three open hits. Fedwire has a cutoff. Each hit is a payment where a name, an address fragment or an intermediary institution scored above the threshold against a sanctions or watchlist entry. Most are the same handful of common surnames that generate hits every single day. Two are genuinely ambiguous. One analyst is working the queue in list order, oldest first, because the queue has no concept of which payment is about to miss its window or which hit has never been seen before.

Both failure modes in this domain are expensive and they pull in opposite directions. Let a real match through and you have a potential violation where liability can attach regardless of intent, plus the correspondent banking consequences that follow a public enforcement action. Over block and you delay legitimate commercial payments, your corporate clients notice, and your treasury sales team spends its week apologising. Tuning is the act of choosing where to sit between those, and the regulator's expectation is not that you get it perfect. It is that you can explain the choice.

Most institutions cannot. The threshold is a number in a vendor console, the reason it is that number is institutional memory, and the evidence that it works is the absence of a problem so far.

Problem one: the match logic has to fit your customer base, not a generic one

Name matching quality depends on the population you are matching. A bank with a large Arabic speaking customer base faces transliteration variance that a bank with a mostly Anglophone book never encounters. A payments company running corridors into South Asia sees patronymic patterns and name ordering that break assumptions built into default algorithms. A trade finance operation screens vessel names, ports and goods descriptions, which behave nothing like personal names.

LSEG World-Check and Dow Jones Risk and Compliance are data providers, and good ones, and it is worth being precise about that: they supply the lists and the enrichment, not the matching engine or your workflow. LexisNexis Bridger Insight is a capable mid market screening tool that gets an institution compliant quickly, with limited visibility into why a particular score was produced, which becomes the constraint when you are trying to tune. Fircosoft is the incumbent inline filter in large payment shops, proven at volume, and tuning it is specialist work that iterates slowly. Napier offers more configurable modern architecture and is still a platform you configure to your population.

What a custom build does: expose the pipeline. Normalisation, transliteration handling, tokenisation, the scoring function, and the threshold are separate, inspectable stages with parameters you can version. When your sanctions officer asks why a name scored 87, someone can answer with the stage by stage detail rather than an appeal to the vendor.

Problem two: a hit queue sorted by arrival time is a design defect

The operational reality is that payment screening is a race against cutoffs and customer screening is a race against onboarding SLAs. A queue that does not know either of those is going to lose one.

What a custom build does: order the queue by time remaining against the relevant deadline and by novelty. Hits identical to a hit you cleared last week on the same customer against the same list entry should present as a one click confirmation with the prior decision and its rationale attached, not as a fresh investigation. Hits that are genuinely new go to the top. That distinction alone typically removes the majority of the queue's clock time, and it depends on something most tools do not do well: keying a decision to the specific triple of subject, list entry and reason, so that recurrence is recognisable.

Structured dispositions matter as much here as in monitoring. A hit closed with a selected reason, referencing the identifier that differentiated the customer from the listed party, is evidence. A hit closed with the free text note cleared is not.

Problem three: good guy lists are a control, and they are usually a spreadsheet

Every screening operation builds a whitelist of subjects previously determined not to be matches. It is necessary. It is also the most dangerous artefact in the department, because a subject placed on it stops generating hits, and lists change.

What a custom build does: treat every whitelist entry as a governed object with an owner, an expiry, the evidence that supported it and the specific list entry it applies to. Never whitelist a name globally. Whitelist a customer against a named list entry, so that if a new list entry appears with a similar name the hit still fires. Then re screen the entire whitelist against every list update, and force review of any entry where the underlying list record changed. Sanctions authorities amend entries with new aliases and identifiers regularly, and an amendment to an entry you previously cleared is exactly the event your process needs to catch.

Problem four: list updates are events, not a refresh job

When OFAC amends the SDN list, or the EU consolidated list changes, or a national list adds names, the correct behaviour is not simply to load the new file. It is to compute the delta, re screen your existing customer base against the added and amended entries, and treat the results as a prioritised batch, while keeping a record of exactly which list version was in force when any payment was screened.

That last point is what an examination will test. If a payment was released on a Tuesday, you need to show which list version was loaded at that moment and what the matching parameters were. Keep list versions immutable and stamp each screening event with the version and parameter set that produced it. It costs almost nothing to build in at the start and is close to impossible to retrofit.

Problem five: the ownership rule is not a name matching problem

Sanctions exposure extends beyond the names on a list. The OFAC 50 percent rule means an entity owned in aggregate by blocked persons is itself blocked even where it appears nowhere on the list. No fuzzy matcher will find that, because the entity name is not there to match.

What a custom build does: join screening to the ownership data you already collect in onboarding. When you hold an ownership graph for a corporate client, evaluate every node against the lists and compute aggregate blocked ownership through the chain. This is the clearest example of why a screening tool bolted on the side of your onboarding platform underperforms a system that shares one data model with it.

What it costs and how long it takes

A first release, meaning list ingestion with versioning and delta computation, a configurable and inspectable matching pipeline, and an operations hit queue with structured dispositions and recurrence handling, runs $80,000 to $190,000 and ships in 12 to 18 weeks. A full platform adding inline screening in the payment path, historical replay for threshold testing, governed good guy lists, ownership rule evaluation and blocked property record keeping runs $240,000 to $550,000 across 8 to 16 months.

What pushes cost up specifically here: inline payment screening, because a filter sitting in a payment path has latency and availability requirements that a batch job does not, and failure behaviour has to be designed rather than defaulted. The number of lists, including internal and correspondent supplied lists. Non Latin script handling, which is genuine specialist work. Trade finance screening of vessels, ports and dual use goods, which is a different matching problem in the same building. And historical re screening, since replaying two years of payments through a candidate parameter set requires that data to be stored in a queryable form from the beginning.

Build versus buy for sanctions screening

Buy if you are a smaller institution screening modest volumes in batch, with a customer base that does not stress transliteration. Bridger Insight or a comparable product plus disciplined process is proportionate, and building a matching engine would be effort spent where your risk is not.

Build, or build the layer around a bought filter, when two or more of these are true. Screening sits inline in a payment path with a cutoff and the queue is the bottleneck. Your customer base or corridors create matching behaviour that default algorithms handle badly. You cannot currently evidence why your thresholds are set where they are. Your good guy list has grown past a few hundred entries and nobody governs it. Or you already hold ownership graphs from onboarding and want the 50 percent rule evaluated properly rather than by hand.

How to choose a developer for screening work

Ask them how they would prove a threshold change is safe before it goes live. The answer must involve replaying historical screening events through the candidate parameters and comparing the hits produced, including the ones that would no longer fire. Anything else is an opinion with a deployment date.

Ask how they will handle a repeat hit on the same customer against the same list entry. If the design does not key decisions to that triple, your analysts will re investigate the same three names every week forever.

Ask what happens when a list entry is amended rather than added. Teams who have built screening answer immediately, because it is the case that separates a real system from a nightly file load.

Ask who owns the code, the matching parameters, the disposition history and the cloud accounts, and get it in the contract before kickoff. Your tuning record and your disposition history are the evidence that defends the programme. At Digital Heroes they belong to the client from the first commit, and we would tell you to refuse any arrangement where your screening evidence lives somewhere you cannot extract it from.

Research & sources

The evidence behind this guide

Independent findings on why this investment pays off. Every link goes to the primary source.

  1. The average developer spends more than 17 hours a week dealing with maintenance issues such as debugging and refactoring, and about four of those hours on 'bad code' - waste that equates to nearly $85 billion annually worldwide in opportunity cost. Source: Stripe (2018) →
  2. 76% of developers are using or planning to use AI tools in their development process in 2024 (up from 70% in 2023), with current active use rising to 62% from 44%; 81% agree increasing productivity is the biggest benefit of AI tools. Source: Stack Overflow (2024) →
  3. A study (led by Prof. Pak-Lok Poon, published in Frontiers of Computer Science, 2024) reviewing decades of spreadsheet-quality research found that about 94% of spreadsheets used in business decision-making contain errors, illustrating the hidden risk of manual spreadsheet workarounds that custom software is built to replace. Source: Central Queensland University / phys.org (Prof. Pak-Lok Poon et al.) (2024) →
  4. Sensor Tower's State of Mobile 2026 reports that global users spent 5.3 trillion hours in iOS and Google Play apps in 2025 (+3.8% YoY), roughly 3.6 hours per day per mobile user. (Note: the page does not itself contrast app time vs. mobile-browser time, so the 'overwhelming majority of time in apps vs browsers' framing is not directly supported by this source.). Source: Sensor Tower (2026) →
Navya S. · Senior Project Manager · Lucknow

As a senior project manager, Navya holds the line between what a client signed off and what a development team can deliver in the time available. Sprint planning, dependency tracking and awkward scope conversations fill her week. Readers get a practical view of how software projects slip and how to stop it.

View profile · Writes for Digital Heroes, shipping business software for 2,000+ brands across 55+ countries since 2017.

FAQ

Frequently asked questions

How much does custom sanctions screening software cost?
A first release with list ingestion and versioning, an inspectable matching pipeline and an operations hit queue with structured dispositions runs $80,000 to $190,000 and ships in 12 to 18 weeks in Digital Heroes delivery experience. A full platform adding inline payment screening, historical replay for threshold testing, governed good guy lists and ownership rule evaluation runs $240,000 to $550,000 over 8 to 16 months. Inline screening in a live payment path is the single biggest cost driver.
Should we buy a screening tool or build our own?
Buy if you screen modest volumes in batch and your customer base does not stress transliteration, because building a matching engine is effort spent away from your actual risk. Build the layer around a bought filter, or build outright, when screening sits inline against a payment cutoff, when your corridors create matching behaviour default algorithms handle badly, or when you cannot evidence why your thresholds sit where they do. The tuning and disposition layer is usually the part worth owning.
How do we reduce sanctions false positives without missing a real match?
Start with the queue rather than the threshold. Recognising a repeat hit on the same customer against the same list entry, and presenting the prior decision for confirmation, removes most of the clock time without changing coverage at all. Only then tune the matching pipeline, and prove any change by replaying historical screening events through the candidate parameters so you can see exactly which hits would no longer fire.
How should good guy lists be governed?
Never whitelist a name globally. Whitelist a specific customer against a specific list entry, with an owner, an expiry date and the evidence that supported the decision attached. Re screen the entire whitelist on every list update and force review of any entry whose underlying list record was amended, because authorities add aliases and identifiers to existing entries regularly and an amendment to something you previously cleared is exactly what the control exists to catch.
What does the OFAC 50 percent rule mean for screening software?
It means an entity can be blocked because of aggregate ownership by blocked persons even though its own name appears on no list, so no amount of fuzzy name matching will find it. The only reliable approach is to join screening to the ownership data collected during onboarding, evaluate every node in the structure against the lists, and compute aggregate blocked ownership through the chain. That is a strong argument for screening and onboarding sharing one data model.
Can screening run inline in our payment flow without breaking cutoffs?
Yes, but inline screening has latency and availability requirements a batch job does not, and the failure behaviour has to be a deliberate design decision rather than a default. Decide in advance what happens when the screening service is unavailable, since both blocking all payments and releasing all payments are choices with consequences. Then order the operations queue by time remaining against the cutoff rather than by arrival.
How do we evidence to an examiner that our screening was correct on a given date?
Keep list versions immutable and stamp every screening event with the list version and parameter set that produced it, so a payment released on a particular Tuesday can be reproduced exactly. Store dispositions as structured reasons referencing the identifier that differentiated your customer from the listed party, not free text. This costs very little to build in at the start and is close to impossible to retrofit later.
Does screening trade finance transactions need different software?
It needs a different matching problem solved in the same system. Vessel names, ports, goods descriptions and dual use item references behave nothing like personal names, so normalisation and scoring have to be configured separately, and the reference data sources differ. Institutions that force trade documents through a personal name matcher get poor precision in both directions, which is why trade screening is a distinct cost driver in any build estimate.
Who owns the tuning parameters if an agency builds our screening system?
You should own the repository, the matching parameters, the full disposition history and the cloud accounts, written into the contract before kickoff. That record is the evidence that defends your programme in an examination, and it accumulates value with every decision your analysts make. At Digital Heroes the client owns all of it from the first commit, and any arrangement where your screening evidence sits somewhere you cannot extract it should be refused.
How long does it take from first call to software my team can actually use?
Plan for four to six months: two to three weeks of discovery, two to four weeks of design, then a 10 to 16 week build with testing. In Digital Heroes delivery experience the schedule killer is not engineering speed but decision lag; a client who takes two weeks to approve wireframes adds two weeks to launch. Book a weekly 30-minute decision slot before kickoff and most of that risk disappears.
Should I ask for a fixed price or pay the agency hourly?
Fixed price for the first version, hourly or retainer for what comes after launch. A fixed-scope, fixed-price V1 puts the estimation risk on the agency, which is exactly where you want it while trust is unproven; hourly billing on an unscoped greenfield build is a blank check. After launch, flip it, because maintenance and small features arrive unpredictably and fixed-pricing every ticket wastes everyone's time.
How many people should be working on my software project?
A typical $40,000 to $150,000 build runs on three to five people: a technical lead, one or two developers, a designer, and someone owning QA and project communication, often as overlapping part-time roles. More bodies do not make software arrive faster; past a point they slow it down with coordination overhead. The question that matters more than headcount is whether one named senior engineer is accountable for the outcome.
Can I build my product on a no-code tool like Bubble instead of hiring developers?
For testing whether anyone wants the product, yes, and Bubble's paid plans start at $29 a month, which is the cheapest validation you will ever buy. The ceiling arrives with complex data relationships, heavy integrations, performance at a few thousand users, and the fact that you cannot export a Bubble app to servers you control. A path many Digital Heroes clients take: prove demand on no-code, then rebuild custom once revenue justifies it, treating the no-code version as a paid prototype rather than a foundation.
How do we get years of data out of our old system and into the new one?
Treat migration as a planned sub-project: a field-mapping document, at least one dry run on a copy of your data, then a cutover with the old system kept read-only for 30 days as a safety net. On Digital Heroes projects it consumes 10 to 15% of the budget when the old system has an export, and more when data must be pulled out screen by screen. Ask any vendor to walk you through their last migration before you sign.
What questions should I ask a development agency on the first call?
Ask who exactly will build it, what happens when scope changes mid-project, what their maintenance terms are after launch, and what they will need from you every week. Then ask them to describe a project that went wrong and what they changed afterward; teams that have shipped at real volume have war stories, and teams claiming a perfect record are hiding something. The scope-change answer matters most: a disciplined shop describes a written change-order process, not a vague promise to be flexible.
What does a $50,000 custom software budget actually buy?
One core workflow done properly: 10 to 15 screens, two or three user roles, a couple of integrations, an admin panel, and automated tests, delivered in roughly 12 to 14 weeks. What it does not buy is that workflow plus a mobile app plus AI features plus five more integrations. The discipline of picking the one workflow that matters is what separates $50,000 projects that ship from $50,000 projects that stall at 70% complete.
How do I make sure custom software is secure and compliant with rules like HIPAA?
Start with the baseline every business system should have: encryption in transit and at rest, role-based access control, and audit logs. If HIPAA applies, the hosting provider must sign a Business Associate Agreement, which AWS, Azure, and Google Cloud all offer, and access controls have to be designed in from day one, not bolted on. SOC 2 certifies a company's operating practices, not a codebase, so ask vendors what they have shipped in your regulated domain rather than which logos are on their website.
What happens if I stop paying for maintenance after launch?
Nothing breaks on day one, which is what makes it dangerous. Within 6 to 18 months, unpatched dependencies accumulate known vulnerabilities, an integrated API like Stripe ships a breaking change, and the first fix requires a developer to relearn a stale codebase at full price. Budget 15 to 20% of the build cost per year for upkeep; it is the difference between a $500 patch and a $15,000 emergency.
What does it cost to keep custom software running after launch?
Budget 15-20% of the original build cost per year, which on a $100,000 system means $15,000 to $20,000 for security patches, dependency updates, bug fixes, and small improvements as real usage reveals what the spec missed. Cloud hosting for a typical business application adds $50 to $300 a month on top. Skipping maintenance does not save the money; in Digital Heroes rescue work, unmaintained systems typically need a far more expensive rebuild within about three years.
Is it cheaper to customize Salesforce than to build a custom CRM from scratch?
If you use less than a third of what Salesforce does, a custom CRM is often cheaper by year three. Salesforce Enterprise lists at $165 per user per month, so 25 seats cost about $49,500 a year before admin and consultant fees, while a focused custom CRM runs $60,000 to $100,000 once plus 15 to 20% a year in maintenance. If you genuinely need Salesforce's ecosystem, reporting, and app marketplace, customizing it beats rebuilding it; the mistake is paying enterprise prices to use it as a glorified contact list.
Who can build a custom software system?

Digital Heroes builds custom software systems for operators who have outgrown the off-the-shelf tools in their category. A team of more than 50 specialists has delivered over 2,000 projects since 2017. Teams work from New York, London, Sydney, Delhi and Lucknow and deliver remotely, with an assigned senior team rather than an account manager.

Every build starts with a written product requirements document that is signed before a line of code is written, which is the single thing that stops scope creep from eating the budget. Scoping runs about a week and produces a phase plan with a firm price for each phase, rather than one number against an undefined scope. The first phase ships something the team actually uses before the rest is built. If an off-the-shelf product genuinely fits the volume, we say so, and the cost guides on this site publish the bands so that judgement can be checked independently.

What makes Digital Heroes different from other software companies?

Four things that competitors in this bracket cannot simply copy. Digital Heroes runs a YouTube channel with more than 2.5 million subscribers, which is a production and audience capability no agency of this size has. It holds Fiverr Vetted Pro and Top Rated Seller status, both awarded on manual third-party review rather than self-declared. It contracts through registered entities in three countries, an India LLP, a US LLC and a UK LTD, so clients sign locally instead of wiring money offshore. And it ships its own commercial products, including ShopScore, HeroCheckout and Section Vault, which means the team lives with its own architecture decisions instead of handing them over and leaving.

Two more that show up in the work. Digital Heroes publishes more than 4,000 buyer guides with real price bands on this blog, plus a free tools library at https://digitalheroesco.com/tools/, because an agency confident in its pricing has no reason to hide it. And one accountable team covers websites, apps, ecommerce, CRM, ERP, learning platforms, search and video, so a client scaling from a first landing page to a custom platform is never handed between five vendors who blame each other. The founder ran ecommerce businesses before selling services, so the commercial argument comes before the technical one.

How can I check Digital Heroes is legitimate before getting in touch?

Verify it independently rather than taking the site's word for it. The YouTube channel is at https://youtube.com/@DigitalMarketingHeroes, the Fiverr profile at https://www.fiverr.com/shreyanshsin261, and the Upwork profile at https://www.upwork.com/freelancers/shreyanshsingh. Client reviews sit on Clutch at https://clutch.co/profile/digital-heroes-0 and Trustpilot at https://www.trustpilot.com/review/digitalheroes.co.in, and the company page is at https://www.linkedin.com/company/digital-heroes-1/.

Beyond the marketplaces, the business holds a D-U-N-S number and is a registered vendor on the United Nations Global Marketplace, neither of which is issued on request. Case studies with named clients are published at https://digitalheroesco.com/case-studies/. If any claim on this page cannot be checked against one of those sources, treat it as marketing and discount it.

Keep reading
let's build

Build something worth launching.

A plan, a team, a timeline, within 24 hours. No decks, no discovery calls. Tell us what you're building and we'll come back with a real scope and a real number.

message us directly · we reply within one business day

mission briefing

Monthly dispatch

Playbooks, real build costs, and what we're shipping. One email a month. No fluff.

visit us

New York HQ

1140 Broadway, Suite 704 · New York, NY 10001

Get directions
Online now

Hey there 👋 How can we help you today?