Most apps localise two things: language and currency. Swap the strings, swap the symbol, ship it.
A smaller category has to localise its behaviour. Which features exist at all, which payment methods appear, what can be shown on screen and at what time of day. Not preferences, requirements, and different ones in every market.
Regulated betting is the extreme version of this problem, which makes it the clearest worked example. Consider one American state where a company’s flagship product is unavailable in nine counties and its second product is unavailable in seventeen. Different seventeen.
Louisiana Is the Hardest Configuration Problem in the Country
Louisiana calls its counties parishes, and in 2020 it became the first state to devolve the legality of sports betting to each one individually.
Voters in 55 of the 64 parishes approved it on 3 November 2020. Nine did not. Mobile betting went live in January 2022, available only inside those 55. Video draw poker, which sits in truck stops and bars across the state, is authorised by the same parish referendum mechanism, so its map differs again. Daily fantasy sports is unavailable in seventeen parishes, a set that does not match the nine.
Underneath that, licensing splits across land-based, riverboat and racino tiers, with separate approvals required for platform providers, service vendors and retail venues. For more information on this topic, the Louisiana licensing tiers and the parish rules attached to each are documented in full.
None of that is a legal footnote for a development team. It is a configuration matrix where the rows are products and the columns are sub-state boundaries, and it is not static either. A bill introduced in the 2026 session proposes fresh parish elections on riverboat gaming, horse racing, video draw poker and sports wagering as four separate ballot propositions. The map is a moving target.
Ireland Went the Opposite Direction Entirely
While the United States fragmented, Ireland consolidated, and it did so from a standing start.
The Gambling Regulation Act 2024 replaced the Betting Act 1931 and the Gaming and Lotteries Act 1956, laws drafted before the internet existed, and it collapsed more than a dozen separate pieces of legislation into one framework. Before it, responsibility was split across the Revenue Commissioners, the Department of Justice and local district courts, which meant no single authority and no single place to complain.
The Gambling Regulatory Authority of Ireland was formally established in March 2025. On 3 February 2026 the Minister for Justice, Home Affairs and Migration signed a commencement order taking effect two days later, and the Department confirmed the authority could begin accepting applications. The Operator Portal opened on 9 February, first remote betting licences issue from 1 July 2026, and existing Revenue permissions expire on 1 July for online operators and 1 December for in-person ones. Gaming and lottery categories open later, between 2027 and 2028.
Enforcement carries fines of up to €20 million or 10% of annual turnover, whichever is higher.
The requirements that matter to a product team are specific and testable. Credit card funding is prohibited. Inducements and bonuses face defined limits. Broadcast advertising on television and radio is not permitted between 5:30am and 9pm. Every one of those is a rule some part of a system has to enforce, and none of them applies in the same form anywhere else.
What This Looks Like in a Codebase
The instinct is to handle it with conditionals. Check the market, branch the logic. That works until roughly the fourth jurisdiction.
The problem is combinatorial. Ireland’s rules are one set. Louisiana’s are another, layered over parish-level availability that differs per product. Add a third and fourth market and you are no longer writing feature logic, you are writing a rules engine badly and by accident, spread across a codebase where nobody can answer the question “what is enabled in market X right now” without reading source.
The alternative is to move jurisdictional rules out of application code entirely and into a configuration layer that a compliance team can read, review and change without a deployment. Features become flags scoped to markets. Payment methods become a per-market allowlist. Content restrictions become data rather than logic. The application asks what is permitted here and renders accordingly.
That is a considerable amount of architecture for what looks, from the outside, like a settings problem. It is also the only version that survives a fifth market. Anyone who has read a comparison of what betting apps actually do will have noticed how much variation sits behind superficially similar products, and a good share of it is not product strategy at all. It is compliance configuration showing through the interface.
Rules Have Effective Dates
Here is the part teams underestimate most.
Jurisdictional rules are not just place-dependent, they are time-dependent, and the dates are published well in advance. Ireland’s transition has two hard deadlines seven months either side of each other. Louisiana’s parish map could be reopened by a bill currently in front of legislators.
A configuration layer that only answers “where” will need manual intervention at every one of those transitions. One that answers “where and when” can have the change staged, reviewed and scheduled in advance, which is how you avoid discovering a deadline on the morning it takes effect.
Three Things That Generalise
None of this is unique to gambling, which is why it is worth the read even if you never ship in the sector.
Anything geographically regulated has this shape. Data residency, age-restricted retail, financial products, medical devices, alcohol delivery. If a rule varies by jurisdiction, the same architectural question applies.
Sub-national variation is where estimates break. Teams plan for country-level differences. Louisiana’s parishes, and the fact that two products there have two different maps, is the kind of thing that turns a two-week configuration task into a quarter.
Compliance should be able to read your rules. If answering a regulator’s question requires a developer to grep the codebase, the rules live in the wrong place. Useful background on the Irish framework is available from Citizens Information, and it is worth noting how much of it reads as product specification rather than law.
The broader point for anyone building apps that cross borders is that localisation stopped being a translation exercise some time ago. Increasingly it is a question of whether your product can be a different product in each market without becoming a different codebase.