Product Development · 26 September 2026

A beta isn't supposed to prove you were right.

tactica.'s Closed Beta wasn't built to prove we'd built the right product. It was built to expose where we hadn't and those lessons are now shaping tactica. 2.0.

tactica.'s Closed Beta gave us encouraging results, uncomfortable audit findings, performance problems and product lessons. More importantly, it gave us a much clearer idea of what tactica. needs to become next.

We didn't build the tactica. Closed Beta to prove we'd built the right product.

We built it to find out where we hadn't.

That's an important distinction.

Because once people can use something real, football starts producing real outcomes and the system begins operating outside the environment in which it was built, assumptions become evidence.

Some survive.

Some don't.

Over the past few months, tactica.'s Closed Beta has done exactly what we needed it to do.

It has given us things to be encouraged by.

It has also shown us things we don't want to carry forward.

And that accumulated evidence is now shaping tactica. 2.0.

Not as a cosmetic redesign.

Not as another collection of features.

And not because everything in the Closed Beta was wrong.

Quite the opposite.

We're rebuilding because the beta taught us enough to know what deserves to survive.

The results looked encouraging. That wasn't enough.

One of the earliest lessons came from Performance.

Across tactica.'s first meaningful observational sample, the model returned +4.96% ROI across 262 settled model positions covering 93 fixtures.

Encouraging.

But instead of treating profitability as evidence that everything underneath the result was healthy, we audited the system.

That decision produced some of the most important lessons of the beta.

We found parts of the core probability mechanics behaving coherently.

We also found places where the intelligence and the way we explained it didn't deserve the same confidence.

That gave us a principle we've carried forward ever since:

Profit does not prove health.

Loss does not prove failure.

Evidence earns change.

The Closed Beta stopped being just somewhere to measure whether recommendations won.

It became somewhere to ask whether tactica. deserved to make them in the first place.

We found explanations the model hadn't earned

One audit found 415 cases where tactica. recorded a finishing contribution as part of the causal explanation for a prediction.

There was a problem.

That contribution hadn't actually changed the prediction.

This wasn't 415 incorrect predictions.

The model had followed its existing calculation.

The explanation had overstated what contributed to it.

We had an easy way to make the discrepancy disappear.

Add the finishing contribution into the model.

Then the prediction and explanation would agree.

We deliberately didn't.

The evidence told us that the explanation was wrong.

It did not tell us that the model should use the missing contribution.

So we corrected the explanation contract and left the model mathematics alone.

Across 313 pre/post comparisons, the numerical predictions remained unchanged.

That experience changed something deeper about tactica.

Information can be applied.

It can be computed but not applied.

Or it can be unknown.

Those states aren't interchangeable.

If tactica. tells someone why it thinks something about a football match, the reason it gives has to be a reason that actually influenced the prediction.

An 80% probability wasn't necessarily stronger than 64%

Another audit exposed a different kind of problem.

tactica. could look at two betting expressions representing the same underlying football opinion and allow the larger displayed probability to appear stronger.

But the percentages weren't necessarily describing the same event.

A team's outright win probability might be 64%.

Its Draw No Bet probability might be close to 80%.

That doesn't mean tactica. suddenly became substantially more convinced the team would win.

Draw No Bet removes the draw from the winning-probability calculation because the stake is refunded if the match finishes level.

Different event.

Different payoff.

Different percentage.

Same underlying football opinion.

The beta exposed that we needed to separate more clearly:

what tactica. thinks about the football

from:

how that opinion might be expressed as a bet.

That distinction now reaches much further into how we're thinking about the product.

Understanding a match and deciding whether there is something worth betting are not the same job.

Unknown has to remain unknown

The same lesson appeared repeatedly in the data.

Missing injury evidence could not legitimately become:

Available.

Missing injury coverage could not legitimately become:

zero injuries.

A current lineup appearing in a Case File didn't automatically prove that lineup had influenced a prediction generated earlier.

A piece of evidence existing today didn't prove it existed when a historical prediction was made.

And more recently, while preparing the next generation of tactica.'s data estate, a provider returned 36 player records for a fixture.

Thirty-five had usable identities.

One didn't.

We had other evidence suggesting who that player probably was.

We refused to silently substitute that identity into the source record.

Instead:

35 validated records remained valid.

1 defective record was quarantined.

The evidence became VALID_PARTIAL rather than magically complete.

These sound like different technical problems.

We increasingly see them as the same problem.

What is tactica. actually entitled to claim it knows?

That's becoming one of the foundational questions for 2.0.

The model wasn't the only thing the beta exposed

There is a danger in building a football-intelligence product that most of the attention goes towards the intelligence.

The Closed Beta reminded us that the product carrying that intelligence matters just as much.

Some tactica. pages were too slow.

Not slightly slower than we'd like.

Unacceptably slow.

Different surfaces had different causes.

Some required too many page-data requests.

Others moved too much data.

Performance Intelligence could ask the browser to reconstruct analytical meaning that should have been composed elsewhere.

The lesson wasn't simply:

Make the API faster.

Nor:

Write smaller JavaScript.

It was architectural.

A principle emerged for 2.0:

The browser renders tactica.'s answer. It does not reconstruct it.

The backend should own the semantic composition of page-critical intelligence.

The browser should receive what it needs to present that answer quickly.

Secondary detail can arrive progressively.

That's now a product requirement for 2.0, not something we'll optimise six months after launch.

We also learned not to protect things just because we'd built them

Closed Beta tactica. accumulated functionality.

That's normal.

What's dangerous is allowing accumulated functionality to become permanent simply because it was expensive to create.

Standalone Player Intelligence and Player Props forced that question.

There was meaningful work there.

There was useful underlying player evidence.

But the standalone product contract hadn't earned enough authority to justify protecting the entire surface simply because it existed.

So we contained it.

That doesn't mean player evidence stopped mattering.

Quite the opposite.

Player evidence remains fundamental to future Match Intelligence: squad quality, availability, expected lineups, confirmed lineups, player form and eventually richer matchup understanding.

What we stopped doing was treating a feature we've built as evidence that a feature belongs in the product.

That's a distinction we're carrying directly into 2.0.

The Case File taught us something similar

It's tempting to design the next Case File now.

We know we want tactica. to understand more about squads, players, lineups, matchups, uncertainty and how a match might actually develop.

We could design beautiful sections for all of them.

Then tell the model to fill the boxes.

We're deliberately doing the opposite.

First determine what tactica. can genuinely understand.

Build the intelligence.

Validate it.

Reject what doesn't survive.

See which mechanisms actually change our understanding of football matches.

Then design the Case File around the intelligence that earned its place.

The model owns the truth.

The interface owns comprehension.

The interface doesn't get to manufacture intelligence because an empty section would look awkward.

And sometimes there shouldn't be a recommendation

This may end up being one of the most important product lessons from the beta.

Football intelligence and betting recommendations are related.

They aren't identical.

tactica. might think Arsenal are the most likely winner of a match.

That doesn't automatically mean an Arsenal bet deserves qualification.

Evidence may be weak.

Uncertainty may be too high.

The available price may be poor.

Different evidence may conflict.

An important lineup assumption may still be unresolved.

Sometimes the entire reasoning chain should end with:

NO RECOMMENDATION.

That isn't an empty product state.

It's a decision.

And in 2.0, we're increasingly treating the ability to abstain as part of the intelligence rather than something to design around.

So why not just keep improving the Closed Beta?

That's the question we've eventually had to answer.

There is a perfectly reasonable argument for continuing to patch and improve the existing tactica. architecture.

We've done plenty of that successfully.

But the Closed Beta was built before many of these principles had been earned.

Evidence authority became stricter.

Causal explanations became stricter.

Historical truth became more important.

The distinction between football opinion and betting execution became clearer.

Performance requirements became harder.

Product boundaries changed.

Our understanding of what Match Intelligence should eventually become expanded considerably.

At some point, continuously inserting those lessons into an architecture designed before them stops being the safest way to preserve them.

So tactica. 2.0 is being built as a clean implementation authority.

That means a fresh system.

Fresh data contracts.

Fresh evidence authority.

Fresh runtime boundaries.

Fresh model receipts.

Fresh frontend/backend contracts.

Nothing gets inherited merely because it existed in Closed Beta.

But that does not mean we're throwing the old system away intellectually.

The opposite.

2.0 starts with what the beta earned

The Closed Beta is reference evidence.

Some ideas will survive.

Some code may eventually survive after deliberate review.

Some product decisions won't.

The rule is:

Understand it.

Decide whether it still belongs.

Then deliberately port it or rewrite it.

Not:

It already exists, so bring it across.

That distinction is why we think of 2.0 as a new implementation informed by the Closed Beta rather than the next pile of changes on top of it.

A clean rebuild can fail too

There is another side to this.

Rebuilding software is seductive.

Everything can look cleaner.

Architectural decisions become easier when you aren't carrying years of compatibility.

Old compromises disappear.

Engineers love that feeling.

Users don't care.

A beautifully architected tactica. 2.0 that nobody returns to would not be progress.

A technically immaculate football model that people don't understand or trust would not be progress.

A faster Case File that doesn't help someone make sense of the match would not be progress.

And a product that produces impressive recommendations without demonstrating long-term accountability would not be progress.

So 2.0 doesn't get a free pass because it's new.

It will eventually have to face the same thing the Closed Beta did:

reality.

Real football.

Real users.

Real behaviour.

Real results.

Real failures.

And evidence we haven't seen yet.

That's what the beta was for

It would be easy to look at everything we've found and conclude that the Closed Beta exposed too many problems.

We see it differently.

A beta isn't supposed to prove you were right.

It's supposed to make being wrong cheaper.

It's where assumptions should collide with reality before those assumptions become expensive, permanent or widely distributed.

The tactica. Closed Beta gave us encouraging Performance.

It gave us model defects.

It gave us data-authority problems.

It gave us product-performance problems.

It showed us functionality we didn't need to protect.

It sharpened the distinction between understanding football and recommending a bet.

And it materially changed our view of what football intelligence should eventually become.

That's a useful beta.

Now the job is to prove we've actually learned from it.

Not by telling everyone tactica. 2.0 will be better.

By building it.

Testing it.

Letting some ideas fail.

Preserving the evidence.

And eventually putting the new system back in front of reality.

The Closed Beta didn't give us proof that tactica. works.

It gave us something more useful at this stage:

a much better idea of what we need to prove next.