iGaming Software & Platform: How to Choose the Right igaming Software Provider in 2026

The iGaming Software KPI Reference Every Operator Needs in 2026: GGR, NGR, RTP, CAC, LTV and More

iGaming Glossary and KPI Hub GGR NGR RTP CAC LTV

What is GGR in iGaming and why does every platform report it differently?

GGR (Gross Gaming Revenue) is the total amount wagered by players minus the total amount paid out as winnings, before any operating costs are deducted. It is the top-line revenue figure for any casino operator. The formula is simple: GGR = Total Bets - Total Wins. Where platforms diverge is in how they handle voided bets, free spins, and jackpot contributions.

GGR is the first number investors, regulators and acquirers ask for, and it is also the number most susceptible to being inflated by bonus accounting choices. If a player deposits $100, claims a $100 bonus, and wagers $500 total before losing everything, your GGR is not $200. It depends on whether your platform counts bonus funds in the wagering pool. SoftSwiss, for instance, separates real-money and bonus-money rounds at the transaction level, which gives you a cleaner GGR figure. Some white-label platforms aggregate both by default, which overstates GGR and causes problems when you reconcile against NGR later.

Jackpot contributions add another layer of complexity. Progressive jackpot networks, like those run by Playtech or NetEnt, deduct a small percentage of every bet to seed the jackpot pool. That deduction happens before GGR is calculated from the studio side, but your platform may or may not reflect it in reported GGR depending on how the aggregator feed is structured. If you are running games through a content aggregator like Relax Gaming or Pariplay, audit their GGR reporting spec before signing. A 1-2% discrepancy between aggregator-reported GGR and your own platform's figure is common and almost always traceable to jackpot seed accounting.

From a regulatory standpoint, MGA licensees must report GGR monthly using the Authority's own definition, which includes bonus-funded play. Curaçao eGaming (under the new 2024 framework) aligns similarly. The practical consequence: your internal GGR definition for management reporting and your regulatory GGR definition may legitimately differ. Build both into your BI layer from day one rather than trying to reconcile them at audit time.

What is NGR and how do you calculate it correctly for a casino operation?

NGR (Net Gaming Revenue) is GGR minus bonuses paid out, payment processing fees, affiliate commissions, chargebacks and applicable gaming taxes. It is the closest thing to true operating revenue. Most operators target an NGR-to-GGR ratio of 60-75%, though this varies sharply by market, bonus strategy and payment mix. Anything below 50% usually signals a bonus abuse problem or an unsustainable affiliate deal.

The NGR formula sounds straightforward until you start listing what belongs in the deductions. Bonuses are obvious, but the definition of 'bonus cost' trips up a lot of first-time operators. Do you count the full face value of a free spin pack, or only the net cash-out value after wagering requirements are met? The industry standard, and the one most B2B platforms use, is to book the bonus cost at the point of cash-out, not at the point of grant. This matters because a $50 free spin bonus with a 35x wagering requirement has an expected cash-out value of roughly $1.40 to $3.50 depending on the game RTP. Counting it as a $50 cost at grant would make your NGR look terrible and would be factually wrong.

Payment processing fees deserve more attention than most operators give them. In markets where credit card acceptance is limited and players use e-wallets (Skrill, Neteller) or crypto, processing costs can run 2-4% on deposits and 1-3% on withdrawals. On a high-volume operation doing $2M GGR per month, that is $60,000-$140,000 coming out of NGR before you have paid a single affiliate. Building a payment stack with a mix of low-cost local bank transfer rails alongside e-wallets is one of the highest-ROI operational decisions you can make in the first year.

Chargebacks are the NGR killer that vendors never mention in sales calls. Depending on your payment processor and player acquisition channel, chargeback rates of 0.5-1.5% of deposit volume are common in offshore markets. At 1%, that is $20,000 per month on $2M in deposits, plus the $20-$45 per-chargeback fee your acquirer charges. Factor this into your NGR model before you launch, not after your first reconciliation.

GGR vs NGR: What Each Deducts and Why It Matters
MetricDeductions IncludedTypical Use CaseRegulatory Reporting
GGRNone (Bets minus Wins only)Top-line revenue, investor reporting, game performanceRequired by MGA, Curaçao, most EU regulators
NGRBonuses, payment fees, chargebacks, affiliate commissions, gaming taxProfitability analysis, affiliate payouts, P&LUsed internally; some jurisdictions (e.g. UK) tax on GGR not NGR
Net RevenueNGR minus platform fees, licensing fees, staffTrue bottom-line before EBITDAInternal only

What is RTP in iGaming software and what is the difference between RTP and hold?

RTP (Return to Player) is the theoretical percentage of all wagered money a slot or table game returns to players over a statistically significant number of rounds. A 96% RTP game returns $96 for every $100 wagered in the long run. Hold is the operator's actual observed revenue as a percentage of total handle. RTP is set by the studio; hold is what you measure in your platform reports.

The gap between RTP and hold confuses a lot of new operators. A game with 96% RTP has a 4% house edge. But in any given month, your observed hold on that game might be 5.8% or 2.1% depending on session lengths, jackpot hits and volatility. High-volatility slots from providers like NoLimit City or Hacksaw Gaming can produce wild monthly variance in hold because a single large jackpot hit skews the numbers. This is normal and expected. The hold converges toward the theoretical house edge only over very large sample sizes, typically tens of millions of rounds.

Where RTP becomes a hard operational constraint is in licensing. The MGA mandates a minimum RTP of 92% for slots. The UK Gambling Commission requires operators to publish the RTP of every game they offer. Some US states, including New Jersey and Pennsylvania, have their own minimum RTP floors set by the Division of Gaming Enforcement. If you are sourcing games through an aggregator like Everi or Scientific Games for a US market, confirm that the certified RTP for each game meets the state floor, not just the default studio configuration.

Operators sometimes try to configure lower-RTP versions of games to increase hold. Most major studios allow RTP variants, typically in the 94%, 96% and 97% range. Pragmatic Play, for example, offers multiple RTP configurations for many of its titles. The trade-off is player retention: experienced players increasingly check published RTPs and will notice if your catalog skews low. For a new operator trying to build a player base, competing on game fairness is a smarter play than squeezing an extra 1% hold.

How do CAC and LTV work together in an iGaming business model?

CAC (Customer Acquisition Cost) is the total marketing spend divided by the number of depositing players acquired. LTV (Lifetime Value) is the total NGR generated by a player over their active lifetime with your brand. The business only works when LTV exceeds CAC by a sustainable multiple, typically 3:1 or better. Most operators discover the real CAC-to-LTV ratio six months after launch, not before.

The average CAC for a new online casino in a competitive market is not a number vendors will quote you. Based on what I have seen across EU, LATAM and offshore launches, expect $80-$250 per first-depositing player (FDP) in a mid-competition market, and $300-$600+ in saturated markets like the UK or Ontario. These figures include affiliate commissions, paid media, welcome bonus costs and the portion of operational overhead attributable to acquisition. If an affiliate network is quoting you CPA deals at $150 per FDP and your average 90-day LTV is $120, you are running a structurally loss-making acquisition channel regardless of volume.

LTV calculation in iGaming is more nuanced than in most subscription businesses because player value is not linear. Roughly 20% of your active players will generate 70-80% of your GGR. This power-law distribution means your average LTV figure is almost meaningless for decision-making. You need cohort-level LTV segmented by acquisition channel, country, device type and first-game category. A player who first plays live dealer typically has 2-3x the LTV of a player who starts on a low-stakes slot. Your iGaming software platform needs to capture this at the session level from day one.

The platforms that handle LTV analytics best out of the box are the ones that integrate a CRM layer natively. EveryMatrix's CasinoEngine has reasonable built-in segmentation. SoftSwiss bundles a CRM module. If you are on a lighter white-label solution, you will likely need to pipe data into a third-party tool like Optimove or Symplify to get the cohort depth you need. Budget for this integration cost upfront. It is not glamorous, but it is the difference between knowing your business and guessing at it.

CAC vs LTV Benchmarks by Market Tier (Indicative Ranges, 2024-2025)
MarketTypical CAC Range (per FDP)Typical 12-Month LTV RangeLTV:CAC Target
UK / Ontario (regulated, competitive)$300-$600$400-$9002:1 minimum
LATAM emerging (Colombia, Peru)$60-$150$120-$3503:1 or better
Offshore / Curaçao-licensed$80-$200$150-$5003:1 or better
US regulated (NJ, PA, MI)$250-$500$350-$8002.5:1 minimum
Crypto-native casino$40-$120$200-$6004:1+ (lower paid media costs)

Which iGaming KPIs should your platform software track natively from day one?

At minimum, your platform needs to report GGR, NGR, active player count, first deposit conversion rate, average session length, game-level hold, bonus cost as a percentage of GGR, and chargeback rate by payment method. If your software cannot produce these eight reports without custom development, you are flying blind and will be unable to meet regulatory reporting requirements in most jurisdictions.

The reporting gap between iGaming software platforms is significant and rarely discussed in sales conversations. SoftSwiss's back-office (used by hundreds of white-label operators) produces solid game-level GGR reports and has a built-in bonus accounting module, but its payment analytics are shallow by default. EveryMatrix offers deeper segmentation through its DataArt integration layer but requires configuration work. Turnkey platforms from suppliers like Digitain or BetConstruct tend to have comprehensive reporting dashboards, but the underlying data model is often opaque, making it hard to export raw data for your own BI tools.

Beyond the basics, the KPIs that separate well-run operations from struggling ones are: deposit-to-wagering conversion rate (what percentage of depositors actually play), game category mix by GGR (slots vs. live vs. table), and reactivation rate from dormant players. These metrics require your platform to log player behavior at the event level, not just at the session level. If your platform only records session starts and session ends, you cannot build the behavioral segmentation you need for retention campaigns.

Regulatory reporting adds another layer of required KPIs. MGA licensees must report monthly active players, GGR by game type, responsible gambling metrics (self-exclusions, deposit limits set), and suspicious transaction counts. Curaçao's new Master License framework introduced in 2024 has similar requirements. Build your data pipeline to produce these reports automatically. Manual regulatory reporting is a compliance risk and an operational drain.

What does 'hold percentage' mean in a casino context and how do you optimize it?

Hold percentage is the ratio of GGR to total handle (total amount wagered). If players wagered $1,000,000 in a month and your GGR was $48,000, your hold is 4.8%. Hold is influenced by game mix, session length, bonus wagering behavior and jackpot variance. You optimize it by managing game mix, limiting high-RTP game bonus play, and increasing average session length through UX and lobby design.

Hold optimization is one of the most underappreciated levers in casino operations. Most operators obsess over player acquisition while ignoring the fact that a 0.5% improvement in hold on $5M monthly handle is $25,000 per month in additional GGR with zero additional acquisition cost. The two biggest drivers of hold are game mix and session length. Live dealer games typically hold 1.5-3% (close to theoretical house edge because play is slower and variance is lower). High-volatility slots can hold anywhere from 1% to 8% in a given month. A catalog heavily weighted toward live dealer will have lower but more predictable hold.

Bonus wagering mechanics directly affect hold. When a player is working through a wagering requirement on a bonus, they tend to play lower-variance games to clear the requirement safely. This is rational behavior and it compresses your hold on bonus-funded play. One structural fix is to restrict high-RTP games (anything above 97%) from contributing to wagering requirements. Pragmatic Play, Play'n GO and most major studios support game-level wagering contribution settings. Use them. A bonus that can be cleared entirely on a 97.3% RTP game is a transfer payment, not a marketing cost.

Session length is a hold multiplier that most operators ignore. Every additional minute a player spends in a session increases the house edge's statistical pull. Lobby design, autoplay features, game recommendation engines and notification timing all affect session length. Platforms like SoftSwiss offer a game recommendation widget. EveryMatrix has a lobby management tool with A/B testing capability. These are not vanity features. A 10% increase in average session length can produce a measurable improvement in hold without touching a single game's RTP setting.

How do iGaming software platforms handle bonus accounting and why does it affect your KPIs?

Bonus accounting determines how your platform records the cost and revenue impact of welcome offers, free spins, cashback and reload bonuses. Platforms that book bonus costs at grant overstate the cost and understate NGR. Platforms that book at cash-out reflect economic reality. The accounting method your platform uses affects every downstream KPI: NGR, bonus-to-GGR ratio, player LTV and affiliate payout calculations.

The industry standard is to book bonus cost at the point of cash-out, after wagering requirements are met. This is because most bonus funds are never cashed out. Industry data suggests that 60-75% of bonus value granted is lost before players complete wagering requirements. If you grant $500,000 in bonus funds in a month and only $150,000 is eventually cashed out, your true bonus cost is $150,000, not $500,000. Booking at grant would make your NGR look $350,000 worse than it actually is and would distort every ratio you calculate from it.

Where platforms differ is in how they handle free spins specifically. A free spin has no direct cash cost at grant, but it has an expected value based on the spin denomination and game RTP. SoftSwiss tracks free spin wins as a bonus liability and deducts them from GGR at the point of cash-out. Some cheaper white-label platforms record free spin wins as player deposits in the wallet, which inflates handle and distorts GGR. This is not a minor accounting quirk. It can make your game-level hold figures meaningless and cause regulatory reporting errors.

Bonus abuse is the silent NGR killer. Bonus hunters use multiple accounts, coordinated wagering patterns and RTP-maximizing play to extract value from promotions systematically. Your platform needs a real-time bonus abuse detection layer. Some platforms build this in (SoftSwiss has a basic rule engine; EveryMatrix offers more sophisticated behavioral flags). For serious operations, third-party fraud tools like Sumsub or Sardine can be integrated at the bonus redemption stage. The cost of a decent fraud layer is trivial compared to the NGR loss from systematic bonus abuse on a poorly protected promotion.

What KPIs do regulators actually require operators to report and on what schedule?

Reporting requirements vary by jurisdiction but the core set is consistent: monthly GGR by game category, active player count, responsible gambling metrics (self-exclusions, deposit limits, time-outs), suspicious transaction reports and, in some jurisdictions, player complaint data. MGA requires monthly submissions. Curaçao's 2024 framework introduced quarterly financial reporting. US state regulators typically require monthly or quarterly submissions depending on the state.

MGA (Malta Gaming Authority) licensees submit a Monthly Compliance Report covering GGR, player counts, bonus expenditure, responsible gambling events and payment method breakdown. The MGA also requires annual audited financial statements and quarterly AML reports. Failure to submit on time triggers automatic penalty procedures. The MGA's online portal has specific field definitions for GGR and NGR that may differ from your internal accounting, so map your platform's output fields to the MGA schema during onboarding, not at the first reporting deadline.

Curaçao's new licensing framework, which replaced the old sublicense system in 2024, requires operators to submit quarterly financial reports including GGR, player activity data and AML transaction monitoring summaries. The new Curaçao eGaming authority (CEG) has been significantly more active in enforcement than the old system. Operators who treated Curaçao as a rubber-stamp license are discovering that the new regime has real teeth. Build your compliance reporting pipeline before you go live, not as an afterthought.

US state regulators are the most demanding. New Jersey's Division of Gaming Enforcement requires monthly gross revenue reports broken down by game type, plus separate reports on player dispute resolution and responsible gambling program activity. Pennsylvania's Gaming Control Board has similar requirements. Michigan's MGCB added real-time suspicious activity reporting requirements in 2023. If you are launching in multiple US states, you will need a compliance team or a managed compliance service. The reporting burden alone justifies the cost of a dedicated compliance manager from day one.

How do GGR-based vs revenue-share affiliate deals affect your NGR and which is better for a new operator?

GGR-based revenue share pays affiliates a percentage of the GGR their referred players generate, typically 25-45%. Revenue share on NGR is lower in percentage terms but deducts your costs first. For a new operator with high bonus costs and uncertain player quality, NGR-based deals protect you from paying affiliates on players who cost you money net of bonuses and chargebacks. CPA deals offer cost certainty but eliminate upside sharing.

The affiliate deal structure is one of the most consequential commercial decisions a new operator makes, and most operators get it wrong by defaulting to the deal structure the affiliate network prefers rather than the one that suits their economics. GGR revenue share is simpler to calculate and affiliates prefer it because it is harder for operators to manipulate. But GGR share paid on a player who generated $200 GGR but cost $180 in bonuses and $30 in payment fees means you paid the affiliate $60-$90 on a player who lost you money. That math does not work at scale.

NGR revenue share, where the affiliate earns a percentage of GGR after bonuses, chargebacks and payment costs are deducted, aligns incentives better. The challenge is that affiliates distrust NGR deals because operators have historically manipulated the cost deductions. The solution is to use a transparent cost model with clearly defined deduction caps, for example, bonus costs capped at 20% of GGR, payment fees at a fixed 2.5% of deposits, chargebacks at actual value. This gives affiliates predictability while protecting your economics.

CPA (Cost Per Acquisition) deals, where you pay a fixed fee per first-depositing player, are the cleanest structure for budgeting but carry the risk of poor player quality. An affiliate who earns $150 CPA has no incentive to send high-LTV players. Hybrid deals, a smaller CPA plus a lower revenue share percentage, align incentives more effectively. For a new operator in the first six months, I recommend starting with CPA deals on a small test budget with two or three affiliates, measuring 90-day LTV by affiliate source, then transitioning to hybrid deals with the affiliates whose players perform.

Affiliate Deal Structures: Trade-offs for New Operators
Deal TypeHow It WorksOperator RiskAffiliate PreferenceBest For
GGR Revenue Share (25-45%)Affiliate earns % of gross revenue from referred playersHigh if bonus costs are high; no cost offsetHigh (transparent, hard to manipulate)Established operators with low bonus ratios
NGR Revenue Share (30-50%)Affiliate earns % after bonuses, fees, chargebacks deductedLower; protects against loss-making playersMedium (distrust of cost deductions)Operators with clear, auditable cost structures
CPA (flat fee per FDP)Fixed payment per first depositing playerPlayer quality risk; no LTV alignmentHigh (predictable income)New operators testing affiliate channels
Hybrid (CPA + low rev share)Small upfront CPA plus ongoing revenue shareBalanced; incentivizes quality and retentionMedium-HighGrowth-stage operators with LTV data

What is the relationship between iGaming software architecture and KPI accuracy?

Your platform's data architecture determines whether your KPIs are accurate or approximate. Platforms built on event-driven architectures with immutable transaction logs produce auditable, accurate KPIs. Platforms that aggregate data at the session level or batch-process transactions introduce timing errors and reconciliation gaps that corrupt your GGR, hold and LTV figures. This is not a theoretical concern. It is a real operational problem.

The core issue is whether your iGaming software records player actions at the round level or the session level. Round-level recording means every single bet, win, free spin and bonus transaction is logged as an individual event with a timestamp, game ID, player ID and amount. Session-level recording aggregates these into session totals. Round-level data is the gold standard. It allows you to reconstruct any KPI from raw events, audit game-level hold with precision, detect bonus abuse patterns and produce the player activity reports that MGA and Curaçao require. Session-level data is cheaper to store and process but leaves you unable to answer basic questions like 'what was the hold on Book of Dead in March for players acquired through affiliate X?'

Most enterprise-grade platforms, SoftSwiss, EveryMatrix, Softgamings, record at the round level. Budget white-label solutions often do not. Before signing any platform contract, ask specifically: do you record individual game rounds as discrete database events? Can I export raw round-level data via API or flat file? What is the data retention period? If the answers are vague, treat that as a red flag. You will eventually need this data for regulatory audits, and you cannot reconstruct it retroactively if it was never captured.

The payment reconciliation layer is equally important. Your platform's wallet system must reconcile with your payment processor's settlement reports at the transaction level, not just at the daily total level. Discrepancies between wallet credits and processor settlements are common in the first months of operation, especially when multiple payment methods are active. Platforms that provide automated reconciliation reports (SoftSwiss has a basic version; more sophisticated operators use dedicated reconciliation tools like Aurum or custom-built ETL pipelines) save significant manual accounting work and reduce the risk of reporting errors to regulators.

How should a new operator set KPI targets before launch and what are realistic benchmarks?

Set KPI targets based on your market, acquisition channel mix and platform capabilities before you spend a dollar on marketing. Reasonable first-year benchmarks for an offshore or LATAM launch include a 65-70% NGR-to-GGR ratio, 3:1 LTV-to-CAC ratio, 4-6% average hold across the catalog, and a first-deposit-to-second-deposit conversion rate above 45%. These are not guaranteed outcomes. They are the targets that indicate a healthy operation.

The NGR-to-GGR ratio is the single most useful health metric for a new operation. A ratio below 55% almost always indicates one of three problems: bonus costs are too high relative to player value, payment processing costs are not being managed, or chargeback rates are elevated. In my experience, new operators launching with aggressive welcome bonuses (200% match up to $500, for example) routinely see NGR-to-GGR ratios of 40-50% in the first three months before the bonus cohort matures and the ratio normalizes. Plan for this in your cash flow model. You will be GGR-positive before you are NGR-positive.

First-deposit-to-second-deposit conversion (FD2SD) is the retention KPI that most closely predicts long-term LTV. An FD2SD rate above 50% indicates your onboarding experience and game lobby are working. Below 35% is a warning sign that players are not finding what they expected, whether that is game selection, loading speed, bonus clarity or payment experience. This metric should be visible in your platform dashboard within the first week of operation. If it is not, build it. The data is there; it just needs to be surfaced.

Average session length and sessions per active player per week are the behavioral KPIs that predict hold and LTV before financial results confirm them. A player who averages 22-minute sessions and plays three times per week is worth tracking. A player who deposits, plays one 4-minute session and never returns is a CAC loss. Segment your player base by these behavioral metrics in the first 30 days and you will know which acquisition channels are sending you real players versus bonus hunters before the 90-day LTV data matures.

Frequently asked questions

What is the difference between GGR and NGR in simple terms?
GGR is what players lost before you deduct your costs. NGR is what you actually keep after subtracting bonuses, payment fees, chargebacks and affiliate commissions. NGR is the number that tells you whether the business is making money.
Which iGaming software platforms have the best built-in KPI reporting?
SoftSwiss and EveryMatrix are the strongest for mid-market operators, offering round-level data, bonus accounting modules and customizable dashboards. Turnkey solutions from Digitain and BetConstruct have comprehensive dashboards but less data export flexibility. Budget white-label platforms typically require third-party BI tools for meaningful KPI depth.
How is RTP regulated and who sets the minimum?
Minimum RTP is set by the licensing jurisdiction. The MGA requires a minimum 92% RTP for slots. The UK Gambling Commission does not set a floor but requires RTPs to be published. US states like New Jersey and Pennsylvania have their own floors set by their respective gaming enforcement divisions. Studios certify their games to the relevant jurisdiction's requirements.
What is a realistic CAC for a new online casino in 2025-2026?
Expect $80-$250 per first-depositing player in mid-competition offshore or LATAM markets, and $300-$600 in competitive regulated markets like the UK or Ontario. These figures include affiliate commissions, bonus costs and attributable marketing spend. Crypto-native casinos often achieve lower CAC due to community-driven acquisition.
How do you calculate player LTV for an online casino?
LTV is the total NGR generated by a player over their active lifetime. Calculate it by cohort: take all players acquired in a given month, sum their cumulative NGR at 30, 60, 90, 180 and 365 days. Segment by acquisition channel and first-game category to identify which sources drive the highest-value players. Average LTV figures are misleading because 20% of players generate 70-80% of revenue.
Does hold percentage change based on the games I offer?
Yes, significantly. Live dealer games hold 1.5-3% monthly (close to theoretical house edge). High-volatility slots can hold 1-8% in any given month due to jackpot variance. A catalog weighted toward live dealer will have lower but more predictable hold. Game mix is one of the most direct levers operators have to manage hold stability.
What KPIs do regulators like the MGA and Curaçao actually require?
MGA requires monthly reports covering GGR by game type, active player counts, responsible gambling events and AML metrics. Curaçao's 2024 framework added quarterly financial reporting and player activity data. US state regulators (NJ, PA, MI) require monthly gross revenue reports plus responsible gambling and dispute resolution data.
Is a GGR revenue share or NGR revenue share deal better for affiliates?
Affiliates prefer GGR deals because they are transparent and harder to manipulate. Operators benefit more from NGR deals because they offset bonus and payment costs before paying commission. For new operators with high bonus ratios, NGR deals are financially safer, but you need clearly defined and auditable cost deduction rules to get affiliates to accept them.
How does bonus accounting affect NGR and why do platforms handle it differently?
Booking bonus costs at grant overstates costs and understates NGR. Booking at cash-out (after wagering requirements are met) reflects economic reality, since 60-75% of bonus value is typically never cashed out. Platforms differ in how they handle this, particularly for free spins, and the method used affects every downstream KPI you calculate.
What is a healthy NGR-to-GGR ratio for an online casino?
A healthy ratio is 60-75% for a mature operation. New operators running aggressive welcome bonuses often see 40-50% in the first three months before the bonus cohort matures. Below 55% in a mature operation almost always indicates a bonus cost, payment cost or chargeback problem that needs immediate investigation.

Comments

No comments yet, be the first.

Comments are moderated before they appear.