XML 138 R5.htm IDEA: XBRL DOCUMENT v2.4.1.9
Consolidated statements of changes in shareholders' equity (USD $)
In Thousands, except Share data
Total
Series C [Member]
Kingsoft Cloud Storage Business [Member]
Series E tranche 1 [Member]
Series E Tranche 2 [Member]
Series D Preferred Stock [Member]
Series E Preferred Shares [Member]
Initial Public Offering [Member]
Common shares [Member]
Common shares [Member]
Initial Public Offering [Member]
Treasury stock [Member]
Additional paid-in capital [Member]
Additional paid-in capital [Member]
Kingsoft Cloud Storage Business [Member]
Additional paid-in capital [Member]
Series E tranche 1 [Member]
Additional paid-in capital [Member]
Series E Tranche 2 [Member]
Additional paid-in capital [Member]
Series D Preferred Stock [Member]
Additional paid-in capital [Member]
Series E Preferred Shares [Member]
Additional paid-in capital [Member]
Series C To One Series C [Member]
Additional paid-in capital [Member]
Initial Public Offering [Member]
Retained earnings [Member]
Retained earnings [Member]
Series D Preferred Stock [Member]
Retained earnings [Member]
Series E Preferred Shares [Member]
Retained earnings [Member]
Series C To One Series C [Member]
Statutory reserves [Member]
Accumulated other comprehensive income [Member]
Non-controlling interest [Member]
Convertible non-redeemable preferred shares [Member]
Series C [Member]
Convertible non-redeemable preferred shares [Member]
Series B [Member]
Convertible non-redeemable preferred shares [Member]
Series A-1 Preferred Stock [Member]
Convertible non-redeemable preferred shares [Member]
Series A [Member]
Convertible non-redeemable preferred shares [Member]
Initial Public Offering [Member]
Series C [Member]
Convertible non-redeemable preferred shares [Member]
Initial Public Offering [Member]
Series B [Member]
Convertible non-redeemable preferred shares [Member]
Initial Public Offering [Member]
Series A-1 Preferred Stock [Member]
Convertible non-redeemable preferred shares [Member]
Initial Public Offering [Member]
Series A [Member]
Beginning Balance, Amount at Dec. 31, 2011 $ 68,252us-gaap_StockholdersEquity               $ 15us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
    $ 60,000us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
              $ 2,324us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
      $ 3,142us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= xnet_StatutoryReserveMember
$ 2,746us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedOtherComprehensiveIncomeMember
$ 480us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NoncontrollingInterestMember
               
Beginning Balance, Shares at Dec. 31, 2011                                                     5,728,264us-gaap_TemporaryEquitySharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesCPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
30,308,284us-gaap_TemporaryEquitySharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesBPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
36,400,000us-gaap_TemporaryEquitySharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= xnet_SeriesAOnePreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
26,416,560us-gaap_TemporaryEquitySharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesAPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
       
Beginning Balance, Shares at Dec. 31, 2011                 61,447,372us-gaap_SharesOutstanding
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
                                                 
Beginning Balance, Amount at Dec. 31, 2011                                                     1xnet_TemporaryEquity
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesCPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
8xnet_TemporaryEquity
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesBPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
9xnet_TemporaryEquity
/ us-gaap_StatementClassOfStockAxis
= xnet_SeriesAOnePreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
7xnet_TemporaryEquity
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesAPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
       
Share-based compensation 2,233us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue                     2,233us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
                                           
Beneficial conversion feature                       286us-gaap_AdjustmentsToAdditionalPaidInCapitalConvertibleDebtWithConversionFeature
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
              (286)us-gaap_AdjustmentsToAdditionalPaidInCapitalConvertibleDebtWithConversionFeature
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
                           
Deemed contribution from Series C preferred shareholders                                                     0xnet_DeemedCapitalContribution
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesCPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
0xnet_DeemedCapitalContribution
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesBPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
0xnet_DeemedCapitalContribution
/ us-gaap_StatementClassOfStockAxis
= xnet_SeriesAOnePreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
0xnet_DeemedCapitalContribution
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesAPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
       
Deemed contribution from Series C preferred shareholders   2,979xnet_DeemedContributionFromPreferredShareholders
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesCPreferredStockMember
                  (2,979)xnet_DeemedContributionFromPreferredShareholders
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
              2,979xnet_DeemedContributionFromPreferredShareholders
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
                           
Series D preferred shares accretion (3,509)xnet_AccretionOfPreferredStock                                     (3,509)xnet_AccretionOfPreferredStock
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
                           
Net income / (loss) 503us-gaap_NetIncomeLoss                                     503us-gaap_NetIncomeLoss
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
          (121)us-gaap_NetIncomeLoss
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NoncontrollingInterestMember
               
Translation adjustments 489us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax                                               489us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedOtherComprehensiveIncomeMember
1us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NoncontrollingInterestMember
               
Ending Balance, Amount at Dec. 31, 2012 67,968us-gaap_StockholdersEquity               15us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
    59,540us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
              2,011us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
      3,142us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= xnet_StatutoryReserveMember
3,235us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedOtherComprehensiveIncomeMember
360us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NoncontrollingInterestMember
               
Ending Balance, Shares at Dec. 31, 2012                                                     5,728,264us-gaap_TemporaryEquitySharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesCPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
30,308,284us-gaap_TemporaryEquitySharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesBPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
36,400,000us-gaap_TemporaryEquitySharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= xnet_SeriesAOnePreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
26,416,560us-gaap_TemporaryEquitySharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesAPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
       
Ending Balance, Shares at Dec. 31, 2012                 61,447,372us-gaap_SharesOutstanding
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
                                                 
Ending Balance, Amount at Dec. 31, 2012                                                     1xnet_TemporaryEquity
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesCPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
8xnet_TemporaryEquity
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesBPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
9xnet_TemporaryEquity
/ us-gaap_StatementClassOfStockAxis
= xnet_SeriesAOnePreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
7xnet_TemporaryEquity
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesAPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
       
Issuance of common shares for share incentive plans, Amount                     2us-gaap_StockIssuedDuringPeriodValueNewIssues
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
(2)us-gaap_StockIssuedDuringPeriodValueNewIssues
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
                                           
Issuance of common shares for share incentive plans, Shares                     9,073,732us-gaap_StockIssuedDuringPeriodSharesNewIssues
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
                                             
Share-based compensation 2,096us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue                     2,096us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
                                           
Series D preferred shares accretion (4,300)xnet_AccretionOfPreferredStock                                     (4,300)xnet_AccretionOfPreferredStock
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
                           
Statutory Reserve                                       (1,336)xnet_StatutoryReserves
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
      1,336xnet_StatutoryReserves
/ us-gaap_StatementEquityComponentsAxis
= xnet_StatutoryReserveMember
                   
Net income / (loss) 10,662us-gaap_NetIncomeLoss                                     10,662us-gaap_NetIncomeLoss
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
          (283)us-gaap_NetIncomeLoss
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NoncontrollingInterestMember
               
Translation adjustments 2,768us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax                                               2,768us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedOtherComprehensiveIncomeMember
7us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NoncontrollingInterestMember
               
Ending Balance, Amount at Dec. 31, 2013 79,194us-gaap_StockholdersEquity               15us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
  2us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
61,634us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
              7,037us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
      4,478us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= xnet_StatutoryReserveMember
6,003us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedOtherComprehensiveIncomeMember
84us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NoncontrollingInterestMember
               
Ending Balance, Shares at Dec. 31, 2013                                                     5,728,264us-gaap_TemporaryEquitySharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesCPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
30,308,284us-gaap_TemporaryEquitySharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesBPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
36,400,000us-gaap_TemporaryEquitySharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= xnet_SeriesAOnePreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
26,416,560us-gaap_TemporaryEquitySharesOutstanding
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesAPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
       
Ending Balance, Shares at Dec. 31, 2013                 61,447,372us-gaap_SharesOutstanding
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
  9,073,732us-gaap_SharesOutstanding
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
                                             
Ending Balance, Amount at Dec. 31, 2013                                                     1xnet_TemporaryEquity
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesCPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
8xnet_TemporaryEquity
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesBPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
9xnet_TemporaryEquity
/ us-gaap_StatementClassOfStockAxis
= xnet_SeriesAOnePreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
7xnet_TemporaryEquity
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesAPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
       
Accretion to convertible redeemable preferred shares redemption value           (1,870)us-gaap_TemporaryEquityAccretionToRedemptionValueAdjustment
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_SeriesDPreferredStockMember
(12,754)us-gaap_TemporaryEquityAccretionToRedemptionValueAdjustment
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_SeriesEPreferredStockMember
                (717)us-gaap_TemporaryEquityAccretionToRedemptionValueAdjustment
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_SeriesDPreferredStockMember
(10,229)us-gaap_TemporaryEquityAccretionToRedemptionValueAdjustment
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_SeriesEPreferredStockMember
      (1,153)us-gaap_TemporaryEquityAccretionToRedemptionValueAdjustment
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_SeriesDPreferredStockMember
(2,525)us-gaap_TemporaryEquityAccretionToRedemptionValueAdjustment
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_SeriesEPreferredStockMember
                       
Amortisation of BCF             (4,139)xnet_AdjustmentsToAdditionalPaidInCapitalAmortizationOfBeneficialConversionFeature
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_SeriesEPreferredStockMember
                  (3,206)xnet_AdjustmentsToAdditionalPaidInCapitalAmortizationOfBeneficialConversionFeature
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_SeriesEPreferredStockMember
        (933)xnet_AdjustmentsToAdditionalPaidInCapitalAmortizationOfBeneficialConversionFeature
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_SeriesEPreferredStockMember
                       
Deemed dividend of convertible preferred shares from their modifications           (279)xnet_DeemedDividendOnPreferredStock
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_SeriesDPreferredStockMember
                            (279)xnet_DeemedDividendOnPreferredStock
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_SeriesDPreferredStockMember
                         
Contingent beneficial conversion feature                                   57xnet_AdjustmentsToAdditionalPaidInCapitalConvertibleDebtWithContingentBeneficialConversionFeature
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
/ us-gaap_SubsidiarySaleOfStockAxis
= xnet_SeriescToOneSeriescPreferredStockMember
        (57)xnet_AdjustmentsToAdditionalPaidInCapitalConvertibleDebtWithContingentBeneficialConversionFeature
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
/ us-gaap_SubsidiarySaleOfStockAxis
= xnet_SeriescToOneSeriescPreferredStockMember
                     
Repurchase of shares (59,082)us-gaap_StockRepurchasedDuringPeriodValue               (4)us-gaap_StockRepurchasedDuringPeriodValue
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
    (47,403)us-gaap_StockRepurchasedDuringPeriodValue
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
              (11,674)us-gaap_StockRepurchasedDuringPeriodValue
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
              (1)us-gaap_StockRepurchasedDuringPeriodValue
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesBPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
           
Repurchase of shares, shares                 (14,664,637)us-gaap_StockRepurchasedDuringPeriodShares
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
                                    (3,756,065)us-gaap_StockRepurchasedDuringPeriodShares
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesBPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
(591,451)us-gaap_StockRepurchasedDuringPeriodShares
/ us-gaap_StatementClassOfStockAxis
= xnet_SeriesAOnePreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
(477,180)us-gaap_StockRepurchasedDuringPeriodShares
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesAPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
       
Acceleration of amortization of beneficial conversion feature (49,346)xnet_AccelerationOfAmortizationOfBeneficialConversionOfInitialPublicOffering                     (49,346)xnet_AccelerationOfAmortizationOfBeneficialConversionOfInitialPublicOffering
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
                                           
Deemed dividend to preferred shareholders upon initial public offering (32,807)xnet_DeemedDividendToPreferredShareholdersUponInitialPublicOffering                     (32,807)xnet_DeemedDividendToPreferredShareholdersUponInitialPublicOffering
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
                                           
Issuance of common shares for share incentive plans, Amount               470,759us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_IPOMember
  71us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_IPOMember
                470,712us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_IPOMember
                      (1)us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesCPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_IPOMember
(7)us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesBPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_IPOMember
(9)us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
/ us-gaap_StatementClassOfStockAxis
= xnet_SeriesAOnePreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_IPOMember
(7)us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesAPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_IPOMember
Issuance of common shares for share incentive plans, Shares                   277,834,210us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_IPOMember
                                        (5,728,264)us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesCPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_IPOMember
(26,552,219)us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesBPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_IPOMember
(35,808,549)us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
/ us-gaap_StatementClassOfStockAxis
= xnet_SeriesAOnePreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_IPOMember
(25,939,380)us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesAPreferredStockMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NonredeemableConvertiblePreferredStockMember
/ us-gaap_SubsidiarySaleOfStockAxis
= us-gaap_IPOMember
IPO expenses (4,216)xnet_InitialPublicOfferingExpenses                     (4,216)xnet_InitialPublicOfferingExpenses
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
                                           
Issuance of common shares for share incentive plans, Amount                     5us-gaap_StockIssuedDuringPeriodValueNewIssues
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
(5)us-gaap_StockIssuedDuringPeriodValueNewIssues
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
                                           
Issuance of common shares for share incentive plans, Shares   96,024,567us-gaap_StockIssuedDuringPeriodSharesNewIssues
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesCPreferredStockMember
                24,195,412us-gaap_StockIssuedDuringPeriodSharesNewIssues
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
                                             
Exercised share options, Amount 295us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised                     295us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
                                           
Exercised share options, Shares 7,333,641us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised               1,431,320us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
  (1,431,320)us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
                                             
Vested restricted shares                 1,563,222us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
  (1,563,222)us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
                                             
Share-based compensation     303us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition
/ us-gaap_BusinessAcquisitionAxis
= xnet_KingsoftCloudStorageBusinessMember
                  303us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition
/ us-gaap_BusinessAcquisitionAxis
= xnet_KingsoftCloudStorageBusinessMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
                                         
Share-based compensation - others 7,644us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationOtherLongtermIncentivePlansRequisiteServicePeriodRecognition                     7,644us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationOtherLongtermIncentivePlansRequisiteServicePeriodRecognition
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
                                           
Beneficial conversion feature       52,377us-gaap_AdjustmentsToAdditionalPaidInCapitalConvertibleDebtWithConversionFeature
/ us-gaap_VestingAxis
= xnet_SerieseTrancheOneMember
1,109us-gaap_AdjustmentsToAdditionalPaidInCapitalConvertibleDebtWithConversionFeature
/ us-gaap_VestingAxis
= xnet_SerieseTrancheTwoMember
                52,377us-gaap_AdjustmentsToAdditionalPaidInCapitalConvertibleDebtWithConversionFeature
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
/ us-gaap_VestingAxis
= xnet_SerieseTrancheOneMember
1,109us-gaap_AdjustmentsToAdditionalPaidInCapitalConvertibleDebtWithConversionFeature
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
/ us-gaap_VestingAxis
= xnet_SerieseTrancheTwoMember
                                     
Statutory Reserve                                       (654)xnet_StatutoryReserves
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
      654xnet_StatutoryReserves
/ us-gaap_StatementEquityComponentsAxis
= xnet_StatutoryReserveMember
                   
Net income / (loss) 10,812us-gaap_NetIncomeLoss                                     10,812us-gaap_NetIncomeLoss
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
          (949)us-gaap_NetIncomeLoss
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NoncontrollingInterestMember
               
Translation adjustments (109)us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax                                               (109)us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedOtherComprehensiveIncomeMember
(5)us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NoncontrollingInterestMember
               
Ending Balance, Amount at Dec. 31, 2014 $ 457,891us-gaap_StockholdersEquity               $ 82us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
  $ 7us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
$ 446,202us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
              $ 574us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
      $ 5,132us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= xnet_StatutoryReserveMember
$ 5,894us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedOtherComprehensiveIncomeMember
$ (870)us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_NoncontrollingInterestMember
               
Ending Balance, Shares at Dec. 31, 2014                 327,611,487us-gaap_SharesOutstanding
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
  30,274,602us-gaap_SharesOutstanding
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember