Hi there! I’m Zeynep, a product manager at US Mobile. This post is a deep dive into International Pools and how they work below the surface.
Note: this feature is in open beta. It is available to customers with a domestic pool plan, and we’re continuing to refine the experience.
International Pools are an upgrade to our Pool plans that simplify one of the hardest problems in mobile service: making shared data work reliably across domestic and international networks. They let a pool use its data allowance both domestically and internationally, instead of managing roaming on each line individually. Depending on the pool type, data can be used in the US, across North America or globally.
Making that experience work seamlessly required us to account for how differently domestic and roaming usage behave. Domestic usage is reported frequently and consistently, which is straightforward to track and meter.
Roaming, however, is provisioned across multiple local partner networks and their international partners quickly compounding into hundreds of distinct carrier relationships, each with its own systems, delays, and rules. Usage reports can arrive late or out of order, and enforcement capabilities vary by network.
Supporting shared roaming therefore requires a system that can remain consistent across domestic and roaming usage, even though the underlying networks, reporting timelines, and controls behave and communicate very differently.
We’ll walk through the model we landed on, the constraints we designed around and how the system behaves in real-world scenarios when those differences matter.
Why pools needed a new model of roaming
Before International Pools, roaming in Pool plans wasn’t actually pooled. It was handled at the line level: each line purchased its own roaming add-ons, tracked its own balance and hit its own limit on its own timeline.. Shared pools remained a domestic only construct while roaming lived alongside it as a separate set of per-line states This created a fragmented experience that broke the shared-data abstraction and introduced unnecessary complexity for customers traveling together.
Per-line roaming does not scale for pools
For pools with multiple lines, line-level roaming quickly becomes cumbersome to manage. Pool plans are most commonly used by families, partners, small teams, or single users with multiple devices who tend to travel together. Treating roaming as a per-line concern adds setup and monitoring overhead , and undermines the simplicity of pooled data
Pool-level roaming aligns with how shared plans are used
With line-level roaming, individual lines can exhaust their roaming data while others still have unused capacity, despite customers being accustomed to sharing data domestically. International Pools extends the same sharing model customers already expect to international use allowing any eligible line to consume data from a single pool without managing separate add-ons or balances.
Cost and usage efficiency improve with shared roaming
When multiple lines travel together, purchasing roaming data separately for each line quickly increases total cost. A shared roaming allowance avoids duplicating capacity across lines by allowing usage to be pooled, reducing redundant purchases and increasing utilization.
Implications of a shared roaming model
Treating roaming as a shared resource introduces additional platform requirements. The platform must enforce fairness across lines, handle delayed usage reporting from roaming partners, and control cost exposure without reintroducing per-line fragmentation. These requirements shape how eligibility, usage attribution, enforcement and top-ups work throughout the system.
Coverage varies, the model does not
Some customers primarily travel within Canada and Mexico, while others travel more broadly. International Pools support both patterns using the same shared roaming model with different coverage scopes. North American Pools apply the shared allowance within the US, Canada and Mexico. Global Pools extend that to all network-supported international destinations. The goal is to keep the customer experience consistent, even though coverage and network behavior might differ.
What the system has to handle
International Pools have to work within a set of constraints that have already existed in roaming and in shared data plans.
- Roaming usage is delayed and inconsistent – Usage records can arrive hours or days late, in batches, or out of order, depending on the partner network.
- Enforcement capabilities vary by network – Not all networks support the same throttling or blocking mechanisms, but the product behavior still needs to be consistent.
- Fairness across lines matters in a shared pool – One line should not unexpectedly exhaust shared data for the rest of the pool without clear rules and recovery paths.
- Roaming-only usage needs guardrails – Roaming can be activated and consumed abroad immediately, which creates abuse risk without line-level eligibility controls.
- Plan changes require explicit lifecycle rules – Immediate upgrades and end-of-cycle changes are handled differently to keep billing and entitlements consistent.
- Customers need a single data balance to track – Even though usage is handled across different systems internally, the pool must behave like one shared allowance externally.
Global Pools vs North American Pools
International Pools come in two variants: North American Pools and Global Pools. Both are built on the same shared-data model described throughout this document. The difference is simply where that shared data can be used.
North American Pools allow the shared data allowance to be used in the United States, Canada, and Mexico. These countries represent a large share of international travel for our customers, and usage within them draws from the same shared pool while following the same rules around eligibility, usage reporting, and enforcement.
Global Pools extend that same shared data allowance to additional international destinations. In addition to North America, shared data can be used while roaming in supported countries worldwide. Coverage depends on the network a given line is on. In rare cases, lines within the same pool may have different coverage if they are on different networks and are traveling in a country not supported by all of them.
The distinction is intentionally simple. Customers choose between North American and Global Pools based on where they expect to travel, with a more customer-friendly option for those who primarily roam in Canada and Mexico, and everything else works the same.
Shared allowance, individual eligibility
International Pools use a single shared data allowance at the pool level, while access to that allowance is evaluated per line.
The pool defines how much data is available in total, regardless of whether usage happens domestically or while roaming. All eligible lines draw from the same balance, and data service is enforced when the shared allowance is exhausted.
Eligibility is tracked per line. A pool can be active and have data available while a specific line is temporarily unable to roam. For example, a line that has not yet shown domestic usage may be blocked from roaming, even though other lines in the same pool are eligible and actively using data.
This separation also allows line-level exceptions without affecting the rest of the pool. A line with an active roaming add-on uses that add-on first. When the add-on is exhausted or expires, the line falls back to the shared pool without changing the pool’s overall state.
Why some lines can’t roam right away
Roaming access in International Pools is evaluated at the line level. A line needs to show recent domestic usage before it can start using shared roaming data.
This requirement exists because roaming can be activated domestically and consumed abroad immediately. Without a basic eligibility check, a shared pool could be used exclusively for roaming without any domestic footprint.
Once a line meets the domestic usage requirement, roaming access is enabled automatically. The pool’s shared allowance and other lines are unaffected.
Why roaming usage doesn’t always update instantly
Domestic data usage is reported frequently and consistently, which makes it straightforward to reflect usage in near real time. Roaming usage, however, comes from partner networks outside the US and often arrives with delays or in batches rather than in real time. Because of this, recent roaming usage may not appear immediately in the dashboard.
To handle this safely, roaming usage is processed in a fixed sequence. Usage records are normalized, classified, attributed to the correct pool and line and deduplicated so the same usage cannot reduce the balance more than once.
As usage reports arrive and settle, the shared balance updates to reflect the final total. Short delays in displayed usage are expected, but enforcement is applied consistently once thresholds are crossed.
What happens when the shared data is used up
International Pools use a single shared data allowance that works both domestically and while roaming. Customers only need to track one number to understand how much data they have left. When that shared data allowance is fully used up, all data services stop, whether a line is at home or abroad. This behavior is consistent across the entire pool.
If more data is needed, there are two ways to extend usage:
- Pool-level top-ups increase the shared data allowance for the entire pool. Customers can add a manual top-up at any time or enable automatic top-ups. When automatic top-ups are enabled, a top-up is triggered when 90% of the shared data allowance is used. Any data added this way becomes part of the same shared allowance and can be used both domestically and while roaming.
- Line-level roaming add-ons are purchased on individual lines and apply only while roaming. These are the standard per-line roaming options. When a line has an active roaming add-on, the system always uses that add-on data first for that line before drawing from the shared pool. This prevents one line’s roaming usage from reducing the shared allowance for other lines. Once the add-on is used up or expires, the line falls back to the pool’s shared data.
Talk and text are handled separately from data. Domestic talk and text are unlimited. Roaming talk and text are capped at 100 minutes and 100 texts per line per cycle for International Pools. Reaching the roaming talk or text cap does not affect data usage or domestic service.
Putting it all together with a real-world example
Consider a shared International Pool with four lines traveling together.
At the start of the trip, the pool has an active shared data allowance that works both domestically and while roaming. Three of the lines are immediately eligible to roam. The fourth line becomes eligible shortly after, once it shows some normal domestic usage.
As the trip continues, all four lines use data while roaming. That usage draws from the same shared allowance, and the balance updates as roaming reports arrive and settle. Some usage may appear with a delay, but the shared total remains accurate over time.
Midway through the trip, one line starts using significantly more roaming data than the others. To avoid impacting the rest of the group, that line purchases a roaming add-on. From that point on, that line’s roaming usage is taken from the add-on first, while the other lines continue using the shared pool.
As the shared data allowance approaches depletion, an automatic top-up is triggered at 90% usage. The added data becomes part of the same shared allowance and is available to all lines, both domestically and while roaming.
If the shared data is eventually used up, data service stops for all lines until more data is added. Throughout this process, domestic talk and text remain unlimited, and roaming talk and text are enforced independently per line.
How this appears in the app
International Pools are designed so the app reflects the system’s current state. The goal is to make it easy to understand what’s happening without exposing internal complexity.
In the app, customers see:
- A single shared data balance for the pool, usable both domestically and while roaming. Usage is shown as total consumption against the shared allowance, with a line chart for overall usage over time and an optional bar chart to see daily usage broken down by domestic versus international.
- Separate indicators for roaming talk and text usage, which are capped per line. Customers can also view a per-line breakdown of data usage split between domestic and international activity.
- Clear separation between pool-level and line-level data. When a line has a roaming add-on, it does not appear on the pool page, since it applies only to that line. Instead, the add-on allocation is shown on the line’s page under the Roaming tab. Pool data is intentionally not shown in the Roaming tab to avoid confusion between shared and line-level allowances.
- Warnings when data is running low or fully used up. These appear both on the pool page and within individual line views, so customers can see approaching limits before service is affected.
- Explicit pool type labels, such as Domestic, North America or Global, so it’s always clear which pool is being viewed.
Usage visuals follow a consistent color system: domestic usage uses the same blue seen elsewhere in the app, while international usage is shown in a complementary red to make the distinction clear at a glance.
Because roaming usage can arrive with some delay, the app may briefly lag behind real-world usage. This does not affect how limits are enforced. As usage reports arrive and settle, the displayed balance updates to reflect the final, accurate total.
Closing summary
International Pools make shared data work across borders without managing roaming line by line. There’s one shared data allowance that works both domestically and while traveling, with predictable behavior.
The core design keeps the pool as the unit of data sharing while evaluating access at the line level. That separation makes it possible to handle delayed roaming usage, line-level exceptions, and cost control without fragmenting the experience or introducing unpredictable behavior.
The goal throughout was consistency: one balance to track, predictable outcomes, and no surprises when traveling.

Thank you for the clarification.
Will the talk/text only add-on come to all lines at some point? As of now I only see the 1GB and 5GB add-ons on my account for our pool lines.
I love this!! Love geeking out on the nerdy details of how this magic works!! I’ve been a customer for 4 years and you guys keep getting better and coming out with more daring features!
One request I’d like to make is that not everyone’s usage patterns are the same, and our family of 4 value talk/text buckets much more than data. 100 minutes/texts would be used up in a day, and top-ups really add up.
Would you guys consider offering a talk/text version of each of the international pool types, that would include 500 or 1000 minutes and texts for each line but only 500MB-1GB or no data (that can be purchased separately) for the pool for emergencies?
How about a talk/text add-on that can complement the Global Pools by offering 500 or 1000 minutes and texts only to the lines doing most of the talking?
Would love to hear your thoughts on this!
Glad you enjoyed the deep dive!
You’re right that usage patterns vary a lot, and for some groups, talk and text can matter more than data.
Talk and text top-ups are available today, and feedback like this is what we’re looking for during beta as we think about how much flexibility International Pools should support. The goal is to add options where they help, without turning the product into a maze.
Appreciate you sharing the perspective.
Hi Zeynep,
Where can I find the top-ups for talk/text? Is it only available to add for a global pool, or can I add it as a line add-on as well? I can’t find it on the web dashboard.
Did you guys consider allowing users to disable roaming for some lines in a pool, while leaving roaming enabled for others?
For example: Smith family has 3 lines sharing 5GB, but dad is going on a business trip to London for a week. He can purchase a 5GB add-on and pay $30 (a full month’s bill typically), or alternatively, he can enable global roaming for the pool but only enable roaming for his line so he pays an extra $6 that month for roaming access (obviously you can shift the per-line cost around and pro-rate it so it might cost a bit more, but still less than $30 for a full 5GB add-on).
Right now, users are forced into paying for the entire pool to have roaming, when not all lines necessarily need to have roaming enabled.
Many pools with families have kids with their own line, or a smartwatch that doesn’t need full access, and really only mom and dad want to have roaming enabled, but they are forced into an all or nothing situation.
Appreciate you guys listening to feedback on this rollout.
Hi Michael,
Roaming talk and text top-ups are handled at the line level, since allocations are per line. If a specific line needs more, you can add a talk/text top-up from that line’s page (Line → International → Purchase International).
International Pools don’t currently support selectively enabling roaming per line. The pool upgrade is intentionally all-or-nothing, since the value improves as more lines travel together and share data. For line-level control, per-line roaming add-ons are the current option. One thing worth noting is that pool data doesn’t go to waste if some lines stay home, the same shared allowance works domestically as well.
Thanks for the feedback!
Thank you for the clarification.
Will the talk/text only add-on come to all lines at some point? As of now I only see the 1GB and 5GB add-ons on my account for our pool lines.
Talk and text–only top-ups are available once a line is on an International Pool, so they won’t appear on a domestic pool.
If you’re already on an International Pool and not seeing the option, feel free to reach out to support and they’ll be happy to take a look and help you out.