XML 41 R127.htm IDEA: XBRL DOCUMENT v2.4.1.9
FAIR VALUE MEASUREMENT - Items Measured at Fair Value on a Recurring Basis (Details) (USD $)
Mar. 31, 2015
Dec. 31, 2014
Assets, Fair Value Disclosure [Abstract]    
Federal funds sold and securities borrowed or purchased under agreements to resell, selected portfolios of securities purchased under agreements to resell, Netting $ (53,365,000,000)us-gaap_SecuritiesPurchasedUnderAgreementsToResellLiability $ (56,339,000,000)us-gaap_SecuritiesPurchasedUnderAgreementsToResellLiability
Trading account assets 302,983,000,000us-gaap_TradingSecurities 296,786,000,000us-gaap_TradingSecurities
Netting of cash collateral received (53,848,000,000)us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset (47,625,000,000)us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset
Investments 326,815,000,000c_InvestmentsExcludingTradingSecurities 333,443,000,000c_InvestmentsExcludingTradingSecurities
Loans 6,575,000,000us-gaap_LoansReceivableFairValueDisclosure 5,901,000,000us-gaap_LoansReceivableFairValueDisclosure
Mortgage servicing rights (MSRs) 1,685,000,000us-gaap_ServicingAssetAtFairValueAmount 1,845,000,000us-gaap_ServicingAssetAtFairValueAmount
Liabilities, Fair Value Disclosure [Abstract]    
Federal funds purchased and securities loaned or sold under agreements to repurchase, selected portfolios of securities sold under agreements to repurchase, Netting (53,365,000,000)us-gaap_SecuritiesSoldUnderAgreementsToRepurchaseAsset (56,339,000,000)us-gaap_SecuritiesSoldUnderAgreementsToRepurchaseAsset
Netting of cash collateral paid (51,292,000,000)us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset (47,769,000,000)us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset
Assets transferred from Level 1 to Level 2 600,000,000us-gaap_FairValueAssetsLevel1ToLevel2TransfersAmount 4,100,000,000us-gaap_FairValueAssetsLevel1ToLevel2TransfersAmount
Assets transferred from Level 2 to Level 1 1,800,000,000us-gaap_FairValueAssetsLevel2ToLevel1TransfersAmount 4,200,000,000us-gaap_FairValueAssetsLevel2ToLevel1TransfersAmount
Liabilities transferred from Level 1 to Level 2   1,400,000,000us-gaap_FairValueLiabilitiesLevel1ToLevel2TransfersAmount
Liabilities transferred from Level 2 to Level 1 200,000,000us-gaap_FairValueLiabilitiesLevel2ToLevel1TransfersAmount  
Mortgage-backed securities - U.S. agency-sponsored    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 26,048,000,000us-gaap_TradingSecurities
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
27,053,000,000us-gaap_TradingSecurities
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
Mortgage-backed securities - Commercial    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 3,832,000,000us-gaap_TradingSecurities
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
4,343,000,000us-gaap_TradingSecurities
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
Mortgage-backed securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 34,184,000,000us-gaap_TradingSecurities
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
36,234,000,000us-gaap_TradingSecurities
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
U.S. Treasury and federal agency securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 23,608,000,000us-gaap_TradingSecurities
/ invest_InvestmentAxis
= us-gaap_USTreasuryAndGovernmentMember
20,474,000,000us-gaap_TradingSecurities
/ invest_InvestmentAxis
= us-gaap_USTreasuryAndGovernmentMember
State and municipal securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 3,796,000,000us-gaap_TradingSecurities
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
3,402,000,000us-gaap_TradingSecurities
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
Foreign government    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 69,417,000,000us-gaap_TradingSecurities
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
64,937,000,000us-gaap_TradingSecurities
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
Corporate    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 25,163,000,000us-gaap_TradingSecurities
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
27,797,000,000us-gaap_TradingSecurities
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
Equity securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 57,536,000,000us-gaap_TradingSecurities
/ invest_InvestmentAxis
= us-gaap_EquitySecuritiesMember
57,846,000,000us-gaap_TradingSecurities
/ invest_InvestmentAxis
= us-gaap_EquitySecuritiesMember
Asset-backed securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 4,783,000,000us-gaap_TradingSecurities
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
4,546,000,000us-gaap_TradingSecurities
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
Other debt securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 12,915,000,000us-gaap_TradingSecurities
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
13,593,000,000us-gaap_TradingSecurities
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
Recurring    
Assets, Fair Value Disclosure [Abstract]    
Federal funds sold and securities borrowed or purchased under agreements to resell 178,462,000,000c_FederalFundsSoldAndSecuritiesBorrowedOrPurchasedUnderAgreementsToResellGross
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
191,320,000,000c_FederalFundsSoldAndSecuritiesBorrowedOrPurchasedUnderAgreementsToResellGross
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Federal funds sold and securities borrowed or purchased under agreements to resell, selected portfolios of securities purchased under agreements to resell, Netting (42,568,000,000)us-gaap_SecuritiesPurchasedUnderAgreementsToResellLiability
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
(47,129,000,000)us-gaap_SecuritiesPurchasedUnderAgreementsToResellLiability
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Federal funds sold and securities borrowed or purchased under agreements to resell, selected portfolios of securities purchased under agreements to resell 135,894,000,000us-gaap_FederalFundsSoldAndSecuritiesBorrowedOrPurchasedUnderAgreementsToResellFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
144,191,000,000us-gaap_FederalFundsSoldAndSecuritiesBorrowedOrPurchasedUnderAgreementsToResellFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Investments 297,809,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
302,901,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Loans 6,575,000,000us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
5,901,000,000us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Mortgage servicing rights (MSRs) 1,685,000,000us-gaap_ServicingAssetAtFairValueAmount
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
1,845,000,000us-gaap_ServicingAssetAtFairValueAmount
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Assets before netting 1,632,061,000,000c_AssetsBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
1,633,109,000,000c_AssetsBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total assets, Netting (878,179,000,000)c_AssetsDerivativeAssetFairValueGrossLiabilityObligationToReturnCashOffsetAndSecuritiesPurchasedUnderAgreementsToResellLiability
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
(873,723,000,000)c_AssetsDerivativeAssetFairValueGrossLiabilityObligationToReturnCashOffsetAndSecuritiesPurchasedUnderAgreementsToResellLiability
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total assets 753,882,000,000us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
759,386,000,000us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Liabilities, Fair Value Disclosure [Abstract]    
Interest-bearing deposits 1,650,000,000us-gaap_InterestBearingDepositLiabilities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
1,684,000,000us-gaap_InterestBearingDepositLiabilities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Federal funds purchased and securities loaned or sold under agreements to repurchase, selected portfolios of securities sold under agreements to repurchase, Gross 76,793,000,000c_FederalFundsPurchasedAndSecuritiesLoanedOrSoldUnderAgreementsToRepurchaseGross
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
83,854,000,000c_FederalFundsPurchasedAndSecuritiesLoanedOrSoldUnderAgreementsToRepurchaseGross
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Federal funds purchased and securities loaned or sold under agreements to repurchase, selected portfolios of securities sold under agreements to repurchase, Netting (42,568,000,000)us-gaap_SecuritiesSoldUnderAgreementsToRepurchaseAsset
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
(47,129,000,000)us-gaap_SecuritiesSoldUnderAgreementsToRepurchaseAsset
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Federal funds purchased and securities loaned or sold under agreements to repurchase, selected portfolios of securities sold under agreements to repurchase 34,225,000,000us-gaap_FederalFundsPurchasedAndSecuritiesLoanedOrSoldUnderAgreementsToRepurchaseFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
36,725,000,000us-gaap_FederalFundsPurchasedAndSecuritiesLoanedOrSoldUnderAgreementsToRepurchaseFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Securities sold, not yet purchased 65,243,000,000us-gaap_FinancialInstrumentsSoldNotYetPurchasedAtFairValue
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
70,944,000,000us-gaap_FinancialInstrumentsSoldNotYetPurchasedAtFairValue
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Short-term borrowings 926,000,000us-gaap_ShorttermDebtFairValue
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
1,496,000,000us-gaap_ShorttermDebtFairValue
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Long-term debt, at fair value 25,409,000,000us-gaap_LongTermDebtFairValue
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
26,180,000,000us-gaap_LongTermDebtFairValue
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total liabilities, Gross 1,080,145,000,000c_LiabilitiesBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
1,078,988,000,000c_LiabilitiesBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total liabilities, Netting (873,473,000,000)c_LiabilitiesDerivativeLiabilityFairValueGrossAssetRightToReclaimCashOffsetAndSecuritiesSoldUnderAgreementsToRepurchaseAsset
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
(872,091,000,000)c_LiabilitiesDerivativeLiabilityFairValueGrossAssetRightToReclaimCashOffsetAndSecuritiesSoldUnderAgreementsToRepurchaseAsset
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total liabilities 206,672,000,000us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
206,897,000,000us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Trading derivatives liabilities    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 897,702,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
883,193,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Cash collateral received 10,398,000,000c_DerivativeCollateralObligationToReturnCashNet
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
9,846,000,000c_DerivativeCollateralObligationToReturnCashNet
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total trading derivatives and cash collateral, liability 908,100,000,000c_DerivativeFairValueOfDerivativeLiabilityAndDerivativeCollateralRightToReclaimCashNet
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
893,039,000,000c_DerivativeFairValueOfDerivativeLiabilityAndDerivativeCollateralRightToReclaimCashNet
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Netting agreements (779,613,000,000)us-gaap_DerivativeLiabilityFairValueGrossAsset
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
(777,178,000,000)us-gaap_DerivativeLiabilityFairValueGrossAsset
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Netting of cash collateral paid (51,292,000,000)us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
(47,769,000,000)us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Netting, Liabilities, total of netting agreements and cash collateral received (830,905,000,000)us-gaap_DerivativeLiabilityFairValueGrossAssetAndRightToReclaimCashOffset
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
(824,947,000,000)us-gaap_DerivativeLiabilityFairValueGrossAssetAndRightToReclaimCashOffset
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total derivative liabilities 77,195,000,000us-gaap_DerivativeLiabilities
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
68,092,000,000us-gaap_DerivativeLiabilities
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Cash collateral received, gross 64,246,000,000c_DerivativeCollateralObligationToReturnCashGross
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
57,471,000,000c_DerivativeCollateralObligationToReturnCashGross
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Trading derivatives liabilities | Interest rate contracts    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 622,573,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
622,282,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Trading derivatives liabilities | Foreign exchange contracts    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 180,094,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
158,826,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Trading derivatives liabilities | Equity contracts    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 32,630,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EquityContractMember
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
32,469,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EquityContractMember
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Trading derivatives liabilities | Commodity contracts    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 24,019,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CommodityContractMember
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
26,186,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CommodityContractMember
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Trading derivatives liabilities | Credit derivatives    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 38,386,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CreditRiskContractMember
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
43,430,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CreditRiskContractMember
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Non-trading derivatives and other financial liabilities    
Assets, Fair Value Disclosure [Abstract]    
Netting of cash collateral received   (1,791,000,000)us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset
/ us-gaap_FairValueByLiabilityClassAxis
= c_OtherFinancialLiabilitiesIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Cash collateral paid, gross   138,000,000c_DerivativeCollateralRightToReclaimCashGross
/ us-gaap_FairValueByLiabilityClassAxis
= c_OtherFinancialLiabilitiesIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Liabilities, Fair Value Disclosure [Abstract]    
Cash collateral received 56,000,000c_DerivativeCollateralObligationToReturnCashNet
/ us-gaap_FairValueByLiabilityClassAxis
= c_OtherFinancialLiabilitiesIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
7,000,000c_DerivativeCollateralObligationToReturnCashNet
/ us-gaap_FairValueByLiabilityClassAxis
= c_OtherFinancialLiabilitiesIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Netting of cash collateral paid   (15,000,000)us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset
/ us-gaap_FairValueByLiabilityClassAxis
= c_OtherFinancialLiabilitiesIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Netting, Liabilities, total of netting agreements and cash collateral received 0us-gaap_DerivativeLiabilityFairValueGrossAssetAndRightToReclaimCashOffset
/ us-gaap_FairValueByLiabilityClassAxis
= c_OtherFinancialLiabilitiesIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Other liabilities, gross 1,968,000,000c_OtherLiabilitiesBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByLiabilityClassAxis
= c_OtherFinancialLiabilitiesIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
1,784,000,000c_OtherLiabilitiesBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByLiabilityClassAxis
= c_OtherFinancialLiabilitiesIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Non-trading derivatives and other financial liabilities measured on a recurring basis, gross 2,024,000,000us-gaap_OtherLiabilitiesFairValueDisclosure
/ us-gaap_FairValueByLiabilityClassAxis
= c_OtherFinancialLiabilitiesIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
1,791,000,000us-gaap_OtherLiabilitiesFairValueDisclosure
/ us-gaap_FairValueByLiabilityClassAxis
= c_OtherFinancialLiabilitiesIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total other assets and cash collateral, gross 2,024,000,000c_OtherLiabilitiesBeforeEffectsOfMasterNettingArrangementsAndDerivativeCollateralObligationToReturnCashNet
/ us-gaap_FairValueByLiabilityClassAxis
= c_OtherFinancialLiabilitiesIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
1,776,000,000c_OtherLiabilitiesBeforeEffectsOfMasterNettingArrangementsAndDerivativeCollateralObligationToReturnCashNet
/ us-gaap_FairValueByLiabilityClassAxis
= c_OtherFinancialLiabilitiesIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Cash collateral received, gross 2,206,000,000c_DerivativeCollateralObligationToReturnCashGross
/ us-gaap_FairValueByLiabilityClassAxis
= c_OtherFinancialLiabilitiesIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
1,798,000,000c_DerivativeCollateralObligationToReturnCashGross
/ us-gaap_FairValueByLiabilityClassAxis
= c_OtherFinancialLiabilitiesIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Mortgage-backed securities - U.S. agency-sponsored    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 26,048,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
27,053,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
Investments 39,084,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
36,091,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
Recurring | Mortgage-backed securities - Residential    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 4,304,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ResidentialMortgageBackedSecuritiesMember
4,838,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ResidentialMortgageBackedSecuritiesMember
Investments 7,276,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ResidentialMortgageBackedSecuritiesMember
8,363,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ResidentialMortgageBackedSecuritiesMember
Recurring | Mortgage-backed securities - Commercial    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 3,832,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
4,343,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
Investments 507,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
554,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
Recurring | Mortgage-backed securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 34,184,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
36,234,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
Investments 46,867,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
45,008,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
Recurring | U.S. Treasury and federal agency securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 23,608,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USTreasuryAndGovernmentMember
20,474,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USTreasuryAndGovernmentMember
Investments 121,359,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USTreasuryAndGovernmentMember
123,690,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USTreasuryAndGovernmentMember
Recurring | State and municipal securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 3,796,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
3,402,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
Investments 12,245,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
12,699,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
Recurring | Foreign government    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 69,417,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
64,937,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
Investments 87,059,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
90,697,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
Recurring | Corporate    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 25,163,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
27,797,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
Investments 14,554,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
12,157,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
Recurring | Equity securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 57,536,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_EquitySecuritiesMember
57,846,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_EquitySecuritiesMember
Investments 990,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_EquitySecuritiesMember
2,725,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_EquitySecuritiesMember
Recurring | Asset-backed securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 4,783,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
4,546,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
Investments 11,504,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
12,506,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
Recurring | Other debt securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 12,915,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
13,593,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
Investments 661,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
661,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
Recurring | Non-marketable equity securities    
Assets, Fair Value Disclosure [Abstract]    
Investments 2,570,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_NonMarketableEquitySecuritiesMember
2,758,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_NonMarketableEquitySecuritiesMember
Recurring | Trading account assets    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 897,772,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
886,237,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Gross cash collateral paid 7,270,000,000c_DerivativeCollateralRightToReclaimCashNet
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
6,523,000,000c_DerivativeCollateralRightToReclaimCashNet
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Trading derivative, asset, gross net cash collateral paid 905,042,000,000c_DerivativeFairValueOfDerivativeAssetAndDerivativeCollateralRightToReclaimCashNet
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
892,760,000,000c_DerivativeFairValueOfDerivativeAssetAndDerivativeCollateralRightToReclaimCashNet
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Less: Netting agreements to assets (779,613,000,000)us-gaap_DerivativeAssetFairValueGrossLiability
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
(777,178,000,000)us-gaap_DerivativeAssetFairValueGrossLiability
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Netting of cash collateral received (53,848,000,000)us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
(47,625,000,000)us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Netting, Assets, total of netting agreements and cash collateral received (833,461,000,000)us-gaap_DerivativeAssetFairValueGrossLiabilityAndObligationToReturnCashOffset
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
(824,803,000,000)us-gaap_DerivativeAssetFairValueGrossLiabilityAndObligationToReturnCashOffset
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Trading derivatives 71,581,000,000us-gaap_DerivativeAssets
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
67,957,000,000us-gaap_DerivativeAssets
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Cash collateral paid, gross 58,562,000,000c_DerivativeCollateralRightToReclaimCashGross
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
54,292,000,000c_DerivativeCollateralRightToReclaimCashGross
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Trading account assets | Interest rate contracts    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 639,982,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
638,453,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Trading account assets | Foreign exchange contracts    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 176,269,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
155,994,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Trading account assets | Equity contracts    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 24,275,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EquityContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
24,752,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EquityContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Trading account assets | Commodity contracts    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 19,023,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CommodityContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
23,520,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CommodityContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Trading account assets | Credit derivatives    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 38,223,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CreditRiskContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
43,518,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CreditRiskContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Non-trading derivatives and other financial assets    
Assets, Fair Value Disclosure [Abstract]    
Netting of cash collateral received (2,150,000,000)us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset
/ us-gaap_FairValueByAssetClassAxis
= c_OtherFinancialAssetsIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
(1,791,000,000)us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset
/ us-gaap_FairValueByAssetClassAxis
= c_OtherFinancialAssetsIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Netting, Assets, total of netting agreements and cash collateral received (2,150,000,000)us-gaap_DerivativeAssetFairValueGrossLiabilityAndObligationToReturnCashOffset
/ us-gaap_FairValueByAssetClassAxis
= c_OtherFinancialAssetsIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
(1,791,000,000)us-gaap_DerivativeAssetFairValueGrossLiabilityAndObligationToReturnCashOffset
/ us-gaap_FairValueByAssetClassAxis
= c_OtherFinancialAssetsIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Other assets, gross 11,057,000,000c_OtherAssetsBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByAssetClassAxis
= c_OtherFinancialAssetsIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
9,430,000,000c_OtherAssetsBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByAssetClassAxis
= c_OtherFinancialAssetsIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Cash collateral paid, gross 29,000,000c_DerivativeCollateralRightToReclaimCashGross
/ us-gaap_FairValueByAssetClassAxis
= c_OtherFinancialAssetsIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
123,000,000c_DerivativeCollateralRightToReclaimCashGross
/ us-gaap_FairValueByAssetClassAxis
= c_OtherFinancialAssetsIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total other assets and cash collateral, gross 11,086,000,000c_OtherAssetsBeforeEffectsOfMasterNettingArrangementsAndDerivativeCollateralRightToReclaimCashNet
/ us-gaap_FairValueByAssetClassAxis
= c_OtherFinancialAssetsIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
9,553,000,000c_OtherAssetsBeforeEffectsOfMasterNettingArrangementsAndDerivativeCollateralRightToReclaimCashNet
/ us-gaap_FairValueByAssetClassAxis
= c_OtherFinancialAssetsIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Other assets 8,936,000,000us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByAssetClassAxis
= c_OtherFinancialAssetsIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
7,762,000,000us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByAssetClassAxis
= c_OtherFinancialAssetsIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Trading securities (excluding trading account derivatives)    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 231,402,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByAssetClassAxis
= c_TradingAssetsExcludingDerivativeAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
228,829,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByAssetClassAxis
= c_TradingAssetsExcludingDerivativeAssetsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 1    
Assets, Fair Value Disclosure [Abstract]    
Federal funds sold and securities borrowed or purchased under agreements to resell 0c_FederalFundsSoldAndSecuritiesBorrowedOrPurchasedUnderAgreementsToResellGross
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
0c_FederalFundsSoldAndSecuritiesBorrowedOrPurchasedUnderAgreementsToResellGross
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Investments 150,529,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
151,499,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Loans 0us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
0us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Mortgage servicing rights (MSRs) 0us-gaap_ServicingAssetAtFairValueAmount
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
0us-gaap_ServicingAssetAtFairValueAmount
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Assets before netting 266,384,000,000c_AssetsBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
261,637,000,000c_AssetsBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total as a percentage of gross assets 16.40%c_PercentageOfAssetsToGrossAssets
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
16.10%c_PercentageOfAssetsToGrossAssets
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Liabilities, Fair Value Disclosure [Abstract]    
Interest-bearing deposits 0us-gaap_InterestBearingDepositLiabilities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
0us-gaap_InterestBearingDepositLiabilities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Federal funds purchased and securities loaned or sold under agreements to repurchase, selected portfolios of securities sold under agreements to repurchase, Gross 0c_FederalFundsPurchasedAndSecuritiesLoanedOrSoldUnderAgreementsToRepurchaseGross
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
0c_FederalFundsPurchasedAndSecuritiesLoanedOrSoldUnderAgreementsToRepurchaseGross
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Securities sold, not yet purchased 50,368,000,000us-gaap_FinancialInstrumentsSoldNotYetPurchasedAtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
59,463,000,000us-gaap_FinancialInstrumentsSoldNotYetPurchasedAtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Short-term borrowings 0us-gaap_ShorttermDebtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
0us-gaap_ShorttermDebtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Long-term debt, at fair value 0us-gaap_LongTermDebtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
0us-gaap_LongTermDebtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total liabilities, Gross 53,663,000,000c_LiabilitiesBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
63,164,000,000c_LiabilitiesBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total as a percentage of gross liabilities 5.00%c_PercentageOfLiabilitiesToGrossLiabilities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
5.90%c_PercentageOfLiabilitiesToGrossLiabilities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 1 | Trading derivatives liabilities    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 3,295,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
3,701,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 1 | Trading derivatives liabilities | Interest rate contracts    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 57,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
77,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 1 | Trading derivatives liabilities | Foreign exchange contracts    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 5,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
0us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 1 | Trading derivatives liabilities | Equity contracts    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 2,718,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EquityContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
2,955,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EquityContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 1 | Trading derivatives liabilities | Commodity contracts    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 515,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CommodityContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
669,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CommodityContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 1 | Trading derivatives liabilities | Credit derivatives    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 0us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CreditRiskContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
0us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CreditRiskContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 1 | Non-trading derivatives and other financial liabilities    
Liabilities, Fair Value Disclosure [Abstract]    
Other liabilities, gross 0c_OtherLiabilitiesBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByLiabilityClassAxis
= c_OtherFinancialLiabilitiesIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
0c_OtherLiabilitiesBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByLiabilityClassAxis
= c_OtherFinancialLiabilitiesIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 1 | Mortgage-backed securities - U.S. agency-sponsored    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 0us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
0us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
Investments 0c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
0c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
Recurring | Level 1 | Mortgage-backed securities - Residential    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 0us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ResidentialMortgageBackedSecuritiesMember
0us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ResidentialMortgageBackedSecuritiesMember
Investments 0c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ResidentialMortgageBackedSecuritiesMember
0c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ResidentialMortgageBackedSecuritiesMember
Recurring | Level 1 | Mortgage-backed securities - Commercial    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 0us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
0us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
Investments 0c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
0c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
Other assets, gross   0c_OtherAssetsBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
Recurring | Level 1 | Mortgage-backed securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 0us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
0us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
Investments 0c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
0c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
Recurring | Level 1 | U.S. Treasury and federal agency securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 19,680,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USTreasuryAndGovernmentMember
15,991,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USTreasuryAndGovernmentMember
Investments 112,018,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USTreasuryAndGovernmentMember
110,710,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USTreasuryAndGovernmentMember
Recurring | Level 1 | State and municipal securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 0us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
0us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
Investments 0c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
0c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
Recurring | Level 1 | Foreign government    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 41,548,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
37,995,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
Investments 36,262,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
37,280,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
Recurring | Level 1 | Corporate    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 595,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
1,337,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
Investments 1,842,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
1,739,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
Recurring | Level 1 | Equity securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 50,782,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_EquitySecuritiesMember
51,346,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_EquitySecuritiesMember
Investments 407,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_EquitySecuritiesMember
1,770,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_EquitySecuritiesMember
Recurring | Level 1 | Asset-backed securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 0us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
0us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
Investments 0c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
0c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
Recurring | Level 1 | Other debt securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 0us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
0us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
Investments 0c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
0c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
Recurring | Level 1 | Non-marketable equity securities    
Assets, Fair Value Disclosure [Abstract]    
Investments 0c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_NonMarketableEquitySecuritiesMember
0c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_NonMarketableEquitySecuritiesMember
Recurring | Level 1 | Trading account assets    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 3,056,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
3,469,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 1 | Trading account assets | Interest rate contracts    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 78,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
74,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 1 | Trading account assets | Foreign exchange contracts    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 1,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
0us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 1 | Trading account assets | Equity contracts    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 2,502,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EquityContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
2,748,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EquityContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 1 | Trading account assets | Commodity contracts    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 475,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CommodityContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
647,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CommodityContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 1 | Trading account assets | Credit derivatives    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 0us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CreditRiskContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
0us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CreditRiskContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 1 | Non-trading derivatives and other financial assets    
Assets, Fair Value Disclosure [Abstract]    
Other assets, gross 194,000,000c_OtherAssetsBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByAssetClassAxis
= c_OtherFinancialAssetsIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
0c_OtherAssetsBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByAssetClassAxis
= c_OtherFinancialAssetsIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 1 | Trading securities (excluding trading account derivatives)    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 112,605,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByAssetClassAxis
= c_TradingAssetsExcludingDerivativeAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
106,669,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByAssetClassAxis
= c_TradingAssetsExcludingDerivativeAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 2    
Assets, Fair Value Disclosure [Abstract]    
Federal funds sold and securities borrowed or purchased under agreements to resell 174,440,000,000c_FederalFundsSoldAndSecuritiesBorrowedOrPurchasedUnderAgreementsToResellGross
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
187,922,000,000c_FederalFundsSoldAndSecuritiesBorrowedOrPurchasedUnderAgreementsToResellGross
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Investments 140,466,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
144,064,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Loans 2,669,000,000us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
2,793,000,000us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Mortgage servicing rights (MSRs) 0us-gaap_ServicingAssetAtFairValueAmount
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
0us-gaap_ServicingAssetAtFairValueAmount
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Assets before netting 1,315,813,000,000c_AssetsBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
1,322,433,000,000c_AssetsBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total as a percentage of gross assets 81.00%c_PercentageOfAssetsToGrossAssets
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
81.30%c_PercentageOfAssetsToGrossAssets
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Liabilities, Fair Value Disclosure [Abstract]    
Interest-bearing deposits 1,185,000,000us-gaap_InterestBearingDepositLiabilities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
1,198,000,000us-gaap_InterestBearingDepositLiabilities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Federal funds purchased and securities loaned or sold under agreements to repurchase, selected portfolios of securities sold under agreements to repurchase, Gross 75,733,000,000c_FederalFundsPurchasedAndSecuritiesLoanedOrSoldUnderAgreementsToRepurchaseGross
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
82,811,000,000c_FederalFundsPurchasedAndSecuritiesLoanedOrSoldUnderAgreementsToRepurchaseGross
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Securities sold, not yet purchased 14,652,000,000us-gaap_FinancialInstrumentsSoldNotYetPurchasedAtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
11,057,000,000us-gaap_FinancialInstrumentsSoldNotYetPurchasedAtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Short-term borrowings 806,000,000us-gaap_ShorttermDebtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
1,152,000,000us-gaap_ShorttermDebtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Long-term debt, at fair value 18,213,000,000us-gaap_LongTermDebtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
18,890,000,000us-gaap_LongTermDebtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total liabilities, Gross 993,332,000,000c_LiabilitiesBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
982,447,000,000c_LiabilitiesBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total as a percentage of gross liabilities 92.90%c_PercentageOfLiabilitiesToGrossLiabilities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
91.90%c_PercentageOfLiabilitiesToGrossLiabilities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 2 | Trading derivatives liabilities    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 880,783,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
865,562,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 2 | Trading derivatives liabilities | Interest rate contracts    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 618,464,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
617,933,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 2 | Trading derivatives liabilities | Foreign exchange contracts    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 179,226,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
158,354,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 2 | Trading derivatives liabilities | Equity contracts    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 27,084,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EquityContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
26,616,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EquityContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 2 | Trading derivatives liabilities | Commodity contracts    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 20,820,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CommodityContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
22,872,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CommodityContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 2 | Trading derivatives liabilities | Credit derivatives    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 35,189,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CreditRiskContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
39,787,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CreditRiskContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 2 | Non-trading derivatives and other financial liabilities    
Liabilities, Fair Value Disclosure [Abstract]    
Other liabilities, gross 1,960,000,000c_OtherLiabilitiesBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByLiabilityClassAxis
= c_OtherFinancialLiabilitiesIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
1,777,000,000c_OtherLiabilitiesBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByLiabilityClassAxis
= c_OtherFinancialLiabilitiesIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 2 | Mortgage-backed securities - U.S. agency-sponsored    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 25,230,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
25,968,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
Investments 39,014,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
36,053,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
Recurring | Level 2 | Mortgage-backed securities - Residential    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 2,174,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ResidentialMortgageBackedSecuritiesMember
2,158,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ResidentialMortgageBackedSecuritiesMember
Investments 7,266,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ResidentialMortgageBackedSecuritiesMember
8,355,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ResidentialMortgageBackedSecuritiesMember
Recurring | Level 2 | Mortgage-backed securities - Commercial    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 3,233,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
3,903,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
Investments 505,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
553,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
Recurring | Level 2 | Mortgage-backed securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 30,637,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
32,029,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
Investments 46,785,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
44,961,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
Recurring | Level 2 | U.S. Treasury and federal agency securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 3,928,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USTreasuryAndGovernmentMember
4,483,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USTreasuryAndGovernmentMember
Investments 9,336,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USTreasuryAndGovernmentMember
12,974,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USTreasuryAndGovernmentMember
Recurring | Level 2 | State and municipal securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 3,549,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
3,161,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
Investments 9,998,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
10,519,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
Recurring | Level 2 | Foreign government    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 27,754,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
26,736,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
Investments 50,222,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
52,739,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
Recurring | Level 2 | Corporate    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 23,801,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
25,640,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
Investments 12,128,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
9,746,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
Recurring | Level 2 | Equity securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 4,156,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_EquitySecuritiesMember
4,281,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_EquitySecuritiesMember
Investments 64,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_EquitySecuritiesMember
274,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_EquitySecuritiesMember
Recurring | Level 2 | Asset-backed securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 1,230,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
1,252,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
Investments 10,987,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
11,957,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
Recurring | Level 2 | Other debt securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 8,522,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
9,221,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
Investments 661,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
661,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
Recurring | Level 2 | Non-marketable equity securities    
Assets, Fair Value Disclosure [Abstract]    
Investments 285,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_NonMarketableEquitySecuritiesMember
233,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_NonMarketableEquitySecuritiesMember
Recurring | Level 2 | Trading account assets    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 883,946,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
871,499,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 2 | Trading account assets | Interest rate contracts    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 636,186,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
634,318,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 2 | Trading account assets | Foreign exchange contracts    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 174,759,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
154,744,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 2 | Trading account assets | Equity contracts    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 19,719,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EquityContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
19,969,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EquityContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 2 | Trading account assets | Commodity contracts    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 17,593,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CommodityContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
21,850,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CommodityContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 2 | Trading account assets | Credit derivatives    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 35,689,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CreditRiskContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
40,618,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CreditRiskContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 2 | Non-trading derivatives and other financial assets    
Assets, Fair Value Disclosure [Abstract]    
Other assets, gross 10,715,000,000c_OtherAssetsBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByAssetClassAxis
= c_OtherFinancialAssetsIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
9,352,000,000c_OtherAssetsBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByAssetClassAxis
= c_OtherFinancialAssetsIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 2 | Trading securities (excluding trading account derivatives)    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 103,577,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByAssetClassAxis
= c_TradingAssetsExcludingDerivativeAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
106,803,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByAssetClassAxis
= c_TradingAssetsExcludingDerivativeAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 3    
Assets, Fair Value Disclosure [Abstract]    
Federal funds sold and securities borrowed or purchased under agreements to resell 4,022,000,000c_FederalFundsSoldAndSecuritiesBorrowedOrPurchasedUnderAgreementsToResellGross
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
3,398,000,000c_FederalFundsSoldAndSecuritiesBorrowedOrPurchasedUnderAgreementsToResellGross
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Investments 6,814,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
7,338,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Loans 3,906,000,000us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
3,108,000,000us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Mortgage servicing rights (MSRs) 1,685,000,000us-gaap_ServicingAssetAtFairValueAmount
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
1,845,000,000us-gaap_ServicingAssetAtFairValueAmount
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Assets before netting 42,565,000,000c_AssetsBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
42,393,000,000c_AssetsBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total as a percentage of gross assets 2.60%c_PercentageOfAssetsToGrossAssets
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
2.60%c_PercentageOfAssetsToGrossAssets
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Liabilities, Fair Value Disclosure [Abstract]    
Interest-bearing deposits 465,000,000us-gaap_InterestBearingDepositLiabilities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
486,000,000us-gaap_InterestBearingDepositLiabilities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Federal funds purchased and securities loaned or sold under agreements to repurchase, selected portfolios of securities sold under agreements to repurchase, Gross 1,060,000,000c_FederalFundsPurchasedAndSecuritiesLoanedOrSoldUnderAgreementsToRepurchaseGross
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
1,043,000,000c_FederalFundsPurchasedAndSecuritiesLoanedOrSoldUnderAgreementsToRepurchaseGross
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Securities sold, not yet purchased 223,000,000us-gaap_FinancialInstrumentsSoldNotYetPurchasedAtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
424,000,000us-gaap_FinancialInstrumentsSoldNotYetPurchasedAtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Short-term borrowings 120,000,000us-gaap_ShorttermDebtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
344,000,000us-gaap_ShorttermDebtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Long-term debt, at fair value 7,196,000,000us-gaap_LongTermDebtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
7,290,000,000us-gaap_LongTermDebtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total liabilities, Gross 22,696,000,000c_LiabilitiesBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
23,524,000,000c_LiabilitiesBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total as a percentage of gross liabilities 2.10%c_PercentageOfLiabilitiesToGrossLiabilities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
2.20%c_PercentageOfLiabilitiesToGrossLiabilities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 3 | Trading derivatives liabilities    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 13,624,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
13,930,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 3 | Trading derivatives liabilities | Interest rate contracts    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 4,052,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
4,272,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 3 | Trading derivatives liabilities | Foreign exchange contracts    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 863,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
472,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 3 | Trading derivatives liabilities | Equity contracts    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 2,828,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EquityContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
2,898,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EquityContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 3 | Trading derivatives liabilities | Commodity contracts    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 2,684,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CommodityContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
2,645,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CommodityContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 3 | Trading derivatives liabilities | Credit derivatives    
Liabilities, Fair Value Disclosure [Abstract]    
Trading derivatives, liability 3,197,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CreditRiskContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
3,643,000,000us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CreditRiskContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByLiabilityClassAxis
= us-gaap_TradingLiabilitiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 3 | Non-trading derivatives and other financial liabilities    
Liabilities, Fair Value Disclosure [Abstract]    
Other liabilities, gross 8,000,000c_OtherLiabilitiesBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByLiabilityClassAxis
= c_OtherFinancialLiabilitiesIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
7,000,000c_OtherLiabilitiesBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByLiabilityClassAxis
= c_OtherFinancialLiabilitiesIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 3 | Mortgage-backed securities - U.S. agency-sponsored    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 818,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
1,085,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
Investments 70,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
38,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
Recurring | Level 3 | Mortgage-backed securities - Residential    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 2,130,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ResidentialMortgageBackedSecuritiesMember
2,680,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ResidentialMortgageBackedSecuritiesMember
Investments 10,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ResidentialMortgageBackedSecuritiesMember
8,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ResidentialMortgageBackedSecuritiesMember
Recurring | Level 3 | Mortgage-backed securities - Commercial    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 599,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
440,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
Investments 2,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
1,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
Recurring | Level 3 | Mortgage-backed securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 3,547,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
4,205,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
Investments 82,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
47,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
Recurring | Level 3 | U.S. Treasury and federal agency securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 0us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USTreasuryAndGovernmentMember
0us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USTreasuryAndGovernmentMember
Investments 5,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USTreasuryAndGovernmentMember
6,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USTreasuryAndGovernmentMember
Recurring | Level 3 | State and municipal securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 247,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
241,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
Investments 2,247,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
2,180,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
Recurring | Level 3 | Foreign government    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 115,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
206,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
Investments 575,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
678,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
Recurring | Level 3 | Corporate    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 767,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
820,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
Investments 584,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
672,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
Recurring | Level 3 | Equity securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 2,598,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_EquitySecuritiesMember
2,219,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_EquitySecuritiesMember
Investments 519,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_EquitySecuritiesMember
681,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_EquitySecuritiesMember
Recurring | Level 3 | Asset-backed securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 3,553,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
3,294,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
Investments 517,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
549,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
Recurring | Level 3 | Other debt securities    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets 4,393,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
4,372,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
Investments 0c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
0c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
Recurring | Level 3 | Non-marketable equity securities    
Assets, Fair Value Disclosure [Abstract]    
Investments 2,285,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_NonMarketableEquitySecuritiesMember
2,525,000,000c_InvestmentsExcludingTradingSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= c_NonMarketableEquitySecuritiesMember
Recurring | Level 3 | Trading account assets    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 10,770,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
11,269,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 3 | Trading account assets | Interest rate contracts    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 3,718,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
4,061,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 3 | Trading account assets | Foreign exchange contracts    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 1,509,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
1,250,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 3 | Trading account assets | Equity contracts    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 2,054,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EquityContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
2,035,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EquityContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 3 | Trading account assets | Commodity contracts    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 955,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CommodityContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
1,023,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CommodityContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 3 | Trading account assets | Credit derivatives    
Assets, Fair Value Disclosure [Abstract]    
Trading derivatives, asset, Gross 2,534,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CreditRiskContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
2,900,000,000us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_CreditRiskContractMember
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 3 | Non-trading derivatives and other financial assets    
Assets, Fair Value Disclosure [Abstract]    
Other assets, gross 148,000,000c_OtherAssetsBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByAssetClassAxis
= c_OtherFinancialAssetsIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
78,000,000c_OtherAssetsBeforeEffectsOfMasterNettingArrangements
/ us-gaap_FairValueByAssetClassAxis
= c_OtherFinancialAssetsIncludingNonTradingDerivativesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Recurring | Level 3 | Trading securities (excluding trading account derivatives)    
Assets, Fair Value Disclosure [Abstract]    
Trading account assets $ 15,220,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByAssetClassAxis
= c_TradingAssetsExcludingDerivativeAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
$ 15,357,000,000us-gaap_TradingSecurities
/ us-gaap_FairValueByAssetClassAxis
= c_TradingAssetsExcludingDerivativeAssetsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember