Security Strategy
DRAFT
7 min read

Threat Modeling vs Penetration Testing

Understanding when to use threat modeling and when to use penetration testing — and why the best security programs use both in the right sequence.

23 March 2026

Reviewed 29 March 2026

7 min read

Threat Modeling
DRAFT — This article is in progress. Content is placeholder only.

Most technology businesses treat penetration testing as their primary security activity. It produces a report, the report gets filed, and the team feels like something has been done. But pen testing finds problems after they exist in production — often after they have been there for months. Threat modeling finds them before code is written. Understanding which to use, when, and in what order is one of the most practical security decisions a CTO or CISO can make.


What penetration testing actually does

Penetration testing simulates an attacker attempting to compromise your systems. A skilled tester — working within agreed scope and rules of engagement — probes for vulnerabilities in running code, live infrastructure, and real configuration. It is valuable, rigorous when done well, and an important part of a mature security program. But it has a fundamental timing constraint: it only tests what already exists.

What threat modeling actually does

Threat modeling starts with a question: what are we building, who might want to attack it, and what could they do? Done well, it maps the systems and data flows involved, identifies realistic threat actors and their motivations, and works through what could go wrong in a structured way. The output is not a list of CVEs — it is a prioritised view of risks, connected to the business impact of each, with clear guidance on where to invest security effort.

Why the sequence matters

If threat modeling identifies a flaw in how your authentication architecture is designed, fixing it takes a design conversation and a changed spec. If a pen tester finds the same flaw six months later in running code, fixing it means rearchitecting a system that is already in production, retesting, and possibly delaying a release. The cost difference is not marginal — it is often an order of magnitude.

When each tool fits best

Use threat modeling when you are designing something new, changing an architecture, or trying to understand where your custom application's real risks lie. Use penetration testing to validate that what you built is actually secure and to maintain assurance on live systems over time. The best programs use both: threat modeling to build right, penetration testing to verify.

The custom application problem

Most penetration testing methodology is built around known vulnerability classes — SQL injection, XSS, broken access control. These matter, but they are not the whole picture for businesses running bespoke technology. A custom application built around proprietary business logic has risks that no automated scanner or standard methodology will surface. The integration between your order management system and your payment processor, or the specific way your platform handles research data from multiple sources, requires someone who understands your system. A generic checklist will not find those risks.


Threat modeling and pen testing are complementary, not competing. The right question is not "which one?" but "what is the right sequence for what we are building?" For teams building custom applications — especially in regulated sectors — both are important. Threat modeling should come first to establish what matters and why, pen testing should validate that the controls are working.

About the author
Jonny Tyers
Jonny TyersFounder & Managing Director

Jonny founded Threatplane in 2017. With a background in offensive security, he has spent 15+ years helping organisations across defence, financial services, healthcare, and manufacturing understand and manage their technology risks.

Full bio →