We're excited to announce our annual conference 'FeatureOps Summit': 23rd June➩ Register Today

Reserve your spot at FeatureOps Summit (June 23)

Events

FeatureOps Summit 2026 is the definitive, virtual gathering for developers, engineers, architects, and product leaders who are closing the gap between engineering velocity and business impact.

Scaling feature flags across the enterprise: Governance without bottlenecks

Alex Casalboni

Alex Casalboni

Developer Advocate

May 29, 2026

You didn’t adopt feature flags to create a compliance audit. You adopted them to ship faster. When scaling to 1,000 engineers with access to production controls, compliance teams will want to know how the system is audited.

Lloyds Banking Group answered it in production across 20 platforms with 1,000-plus users. They encoded governance into the toolchain itself: RBAC, four-eyes change requests, automated audit trails, and identity-driven provisioning. Distributed teams release independently. The compliance record writes itself.

TL;DR

  • At org scale, feature flags are shared infrastructure. Treat them that way from the start.
  • RBAC eliminates the single-admin bottleneck that stalls releases at scale.
  • Change requests built into the release workflow satisfy four-eyes requirements without a separate ticket queue.
  • Audit logs need to capture approver, environment, and outcome, not just who changed what.
  • SSO and SCIM provisioning keep permission state in sync with your identity provider automatically.

From team-level toggles to a shared FeatureOps capability: the structural shift Lloyds made

The structural decision

Feature flags at one team’s scale are a configuration detail. At org-wide scale, they are infrastructure. The gap between those two states determines everything that follows.

When Lloyds Banking Group rolled out FeatureOps across 20 platforms for 1,000-plus users, the first decision was not which tool to use. It was who owns flag management as a shared service. Without that decision, every team builds its own approach, its own naming conventions, and its own permissions model. The result is dozens of disconnected systems that cannot be audited as a whole.

Treating flags as infrastructure means a platform team owns the tooling and governance model. Product teams own the flags they create within it. Separating platform ownership from product team usage makes RBAC, audit trails, and lifecycle management tractable at 1,000+ users.

What the shift produces

Wayfair ran this model at scale: thousands of engineers, 20,000-plus requests per second at peak. Their previous homegrown system cost three times as much. Savings came from centralizing what had been fragmented across teams: flag delivery, permissions, and audit logging.

Granular role-based access: who can release what, when, and to whom

The single-admin bottleneck

At small scale, one person can hold admin access to all flags without creating a bottleneck. At 20 teams, the single administrator becomes the constraint. Every flag change, every environment promotion, every new flag creation routes through one queue. Teams stop shipping because the admin is in a meeting.

RBAC scopes permissions to the role: product managers toggle flags in staging, developers edit within their own projects, and platform engineers hold cross-project visibility for audits and lifecycle management. No one carries more access than their job requires. No single person becomes a bottleneck for flag changes.

Adminless access in a regulated institution

Prudential, a 150-year-old financial institution with 40,000-plus employees, implemented this model through Unleash Enterprise. Thousands of developers self-serve within defined permission boundaries for day-to-day flag management. Central admin intervention isn’t required for standard releases. Each team manages its own flags; the governance layer manages what each team can do.

Permission boundaries double as audit boundaries in regulated environments. When a compliance team asks which team changed a production flag, the answer is traceable because the permission model forced the change through the right actor.

The four-eyes principle in production: change requests as a control, not a bottleneck

Regulated industries require that no single engineer pushes a flag change to production without a second approval. This control requirement is documented in SOC2 and ISO27001. The problem is implementation. Most teams treat four-eyes approval as an out-of-band process: make the flag change in the tool, open a change management ticket, wait for approval, then return to complete the release. Adding a separate queue to every production change turns a compliance control into a bottleneck.

At Prudential, developers interact only with Unleash. Flag changes trigger automatic entries in ServiceNow in the background, and approvals are tracked there. The record satisfies auditors without any developer touching the change management system. As Prudential put it: “With Unleash, developers never have to see ServiceNow.” The compliance record exists; the developer overhead does not.

Pitch reduced hotfixes by 75 percent after moving to daily releases. Fewer emergency fixes mean the approval layer was catching problems before production, not just recording who approved a broken release.

Change request workflows break down when teams apply four-eyes approval to every flag toggle regardless of environment. Requiring production approval for flags in development or test adds friction with zero compliance benefit. Approvals gate production, not experimentation. Applying the same workflow to every environment is what turns a necessary control into a delay.

Audit logs that satisfy SOC2, ISO27001, and regulator-grade scrutiny

A log showing “engineer changed flag at 14:32” is not an audit trail. At the scale of a regulated institution like Tink – an open banking platform and Visa solution, 25+ services and 20 different environments – a useful audit trail must show:

  • Who made the change and under what role
  • Which environment was affected
  • Whether approval was required and who provided it
  • The before and after state of the flag configuration
  • Whether the change was within the actor’s permission scope

Prudential’s auditors accept automated flag change records because the log captures all of these, synced automatically from Unleash to their change management system. No developer creates the record manually; the toolchain creates it as a byproduct of the workflow. Tink applies the same model across its monolithic architecture. Instant flag toggling replaces large-scale rollbacks, and every toggle is logged with the full context a regulator would require.

The audit trail must exist whether or not the developer thinks about it. When compliance depends on developer discipline, it fails at scale. When compliance is the output of a correctly configured workflow, it holds at 1,000 users the same way it holds at 10.

Designing flag organization to mirror your org chart

The inventory problem

Conway’s Law applies to flag taxonomy whether you design for it or not. Teams will name flags the way they communicate. Without deliberate structure, flags accumulate into an inventory no one can read: no clear owner, no expiration date, no indication of which environment the flag is active in.

Data shows what happens when flags accumulate without a plan. A 2026 study on feature toggle dynamics found removals lag additions by 35 percent in Kubernetes and 13 percent in comparable platforms. Median toggle lifespans reached 734 days in Kubernetes. Between 0.73 and 1.33 percent of toggles become permanent through neglect. These flags outlast every reasonable removal window. At enterprise scale, researchers studying systems with approximately 12,000 active flags (ACM, 2022) found it impossible to test every flag combination manually. You need a way to automatically find how flags depend on each other.

Designing deliberately

Each flag should live in the project namespace of the team that owns it, named with the team identifier and a target expiration signal. Lifecycle tooling can then filter by team, sort by age, and surface stale flags without combing through an undifferentiated list.

Rigid org-mirroring has one challenge: cross-functional flags that span multiple teams. A shared authentication feature or a platform-wide emergency shut-off cannot live cleanly in one team’s namespace. Force it there and the flag either has no clear owner or creates an access conflict. The right structure is a dedicated namespace for shared infrastructure flags, owned explicitly by a platform team, with cross-team read visibility configured by default. Shared flags belong to the platform team.

Onboarding 1,000+ users without losing control: SSO, SCIM, and the provisioning layer

Identity-driven provisioning

Manual user provisioning does not scale. At 1,000 users, engineers join and leave, change teams, and shift project responsibilities continuously. If each change requires a ticket to update flag permissions, the permission state drifts from the actual org state within weeks. A developer who left three months ago still has production flag access. A new engineer is blocked from their team’s flags until someone processes their request.

SSO and SCIM provisioning make onboarding event-driven. When a new engineer joins and is added to the identity provider (Okta, Azure AD, and similar), flag permissions provision automatically from their group membership. When they leave, permissions are revoked without a separate ticket. The permission state stays synchronized with the org chart because the identity provider is the source of truth for both.

Infrastructure for polling at scale

Provisioning handles the organizational layer. When thousands of application instances poll a central flag server simultaneously, the server becomes a bottleneck and a single point of failure.

Unleash Edge for scalable evaluation sits between the central API and the SDKs, absorbing the polling load and maintaining local flag state. Application instances query Edge directly, so evaluation continues even when the central server is unreachable. Wayfair’s 20,000+ requests per second runs through this architecture.

See FeatureOps at enterprise scale with Unleash Enterprise

Governance at this scale isn’t a bespoke build for banks. Unleash Enterprise packages RBAC, four-eyes change requests, SSO and SCIM provisioning, full audit logging, and feature lifecycle management into a single workflow. Change management integration and Unleash Edge for distributed evaluation round out the deployment.

Lloyds Banking Group runs this across 20 platforms and 1,000-plus users in one of the most tightly regulated banking environments in the UK. Prudential runs it across 40,000-plus employees in a 150-year-old financial institution, with automated compliance that satisfies auditors without developer overhead. Both organizations reached the same conclusion: the governance architecture had to be the toolchain, not a layer added on top of it.

FAQs about scaling feature flags

How do I automate feature flag cleanup at scale?

Manual cleanup fails when removals lag additions by up to 35 percent (Arxiv, 2026). Engineering teams at Uber use tools like Piranha to perform AST-based refactoring, which automatically generates code cleanup diffs for stale flags. At the process level, some teams enforce a flag quota where developers must delete an old toggle before creating a new one.

What are the infrastructure requirements for SCIM provisioning?

SCIM requires a compatible identity provider like Okta, Microsoft Entra ID, or PingFederate to act as the source of truth. The identity provider pushes user identity and group membership updates to the feature flag platform via a REST API. In Unleash, this ensures that when an engineer changes teams in your directory, their project-level flag permissions update automatically without manual tickets.

How do I prevent a feature flag outage from breaking my application?

High-scale systems use local evaluation to remove the central server from the critical request path. By using a proxy layer like Unleash Edge, application SDKs evaluate flags against a local cache of the environment state. If the central server becomes unreachable, the application continues to function using the last known flag configurations instead of reverting to hardcoded defaults.

Can I use feature flags for permanent configuration logic?

While feature flags are designed to be short-lived, practitioners often use them for permanent overrides like regional tax rules or customer-specific entitlements. This creates configuration debt that increases the complexity of the system’s state space. To manage this, categorize flags by type and apply different expiration policies to release toggles versus long-lived operational flags.

How do change requests integrate with existing CI/CD pipelines?

Change requests act as a governance gate within the flag platform that can trigger or be triggered by external workflows via webhooks. For example, a flag approval in Unleash can automatically update a ServiceNow ticket or post a notification to a Slack deployment channel. This ensures that four-eyes requirements are met within the release toolchain rather than through a separate, manual process.