XML 164 R193.htm IDEA: XBRL DOCUMENT v2.4.1.9
Accumulated Other Comprehensive Income/(Loss) - Components of Other Comprehensive Income/(Loss) (Details) (USD $)
In Millions, unless otherwise specified
12 Months Ended
Dec. 31, 2014
Dec. 31, 2013
Dec. 31, 2012
Unrealized gains/(losses) on AFS securities:      
Net change, unrealized gains/(losses) on AFS securities $ 1,975us-gaap_AvailableForSaleSecuritiesChangeInNetUnrealizedHoldingGainLossNetOfTax $ (4,070)us-gaap_AvailableForSaleSecuritiesChangeInNetUnrealizedHoldingGainLossNetOfTax $ 3,303us-gaap_AvailableForSaleSecuritiesChangeInNetUnrealizedHoldingGainLossNetOfTax
Translation adjustments:      
Net change after tax (11)us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax (41)us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax (69)us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
Other Comprehensive Income (Loss), Derivatives Qualifying as Hedges, Net of Tax [Abstract]      
Net change 44us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax (259)us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax 69us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax
Defined benefit pension and OPEB plans:      
Net change, defined benefit pension and OPEB plans (1,018)us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax 1,467us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax (145)us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
Total other comprehensive income/(loss), after–tax 990us-gaap_OtherComprehensiveIncomeLossNetOfTax (2,903)us-gaap_OtherComprehensiveIncomeLossNetOfTax 3,158us-gaap_OtherComprehensiveIncomeLossNetOfTax
Unrealized gains/(losses) on investment securities      
Unrealized gains/(losses) on AFS securities:      
Net unrealized gains/(losses) arising during the period before tax 3,193us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
(5,987)us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
7,521us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
Net unrealized gains/(losses) arising during the period tax effect (1,170)us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
2,323us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
(2,930)us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
Net unrealized gains/(losses) arising during the period after tax 2,023us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
(3,664)us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
4,591us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
Reclassification adjustment for realized (gains)/losses included in net income before tax (77)us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
(667)us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
(2,110)us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
Reclassification adjustment for realized (gains)/losses included in net income tax effect 29us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
261us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
822us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
Reclassification adjustment for realized (gains)/losses included in net income after tax (48)us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
(406)us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
(1,288)us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
Net change before tax 3,116jpm_OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentIncludingOttiBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
(6,654)jpm_OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentIncludingOttiBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
5,411jpm_OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentIncludingOttiBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
Net change tax effect (1,141)jpm_OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentIncludingOttiTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
2,584jpm_OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentIncludingOttiTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
(2,108)jpm_OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentIncludingOttiTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
Net change, unrealized gains/(losses) on AFS securities 1,975us-gaap_AvailableForSaleSecuritiesChangeInNetUnrealizedHoldingGainLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
(4,070)us-gaap_AvailableForSaleSecuritiesChangeInNetUnrealizedHoldingGainLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
3,303us-gaap_AvailableForSaleSecuritiesChangeInNetUnrealizedHoldingGainLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
Translation adjustments, net of hedges      
Translation adjustments:      
Translation before tax (1,638)jpm_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
(807)jpm_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
(26)jpm_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
Translation tax effect 588us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
295us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
8us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
Translation after tax (1,050)jpm_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossAfterTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
(512)jpm_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossAfterTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
(18)jpm_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossAfterTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
Hedges before tax 1,698jpm_OtherComprehensiveIncomeForeignCurrencyHedgesGainLossBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
773jpm_OtherComprehensiveIncomeForeignCurrencyHedgesGainLossBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
(82)jpm_OtherComprehensiveIncomeForeignCurrencyHedgesGainLossBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
Hedges tax effect (659)jpm_OtherComprehensiveIncomeForeignCurrencyHedgesGainLossArisingDuringPeriodTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
(302)jpm_OtherComprehensiveIncomeForeignCurrencyHedgesGainLossArisingDuringPeriodTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
31jpm_OtherComprehensiveIncomeForeignCurrencyHedgesGainLossArisingDuringPeriodTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
Hedges after tax 1,039jpm_OtherComprehensiveIncomeForeignCurrencyHedgesGainLossAfterTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
471jpm_OtherComprehensiveIncomeForeignCurrencyHedgesGainLossAfterTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
(51)jpm_OtherComprehensiveIncomeForeignCurrencyHedgesGainLossAfterTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
Net change before tax 60us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
(34)us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
(108)us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
Net change tax effect (71)us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
(7)us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
39us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
Net change after tax (11)us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
(41)us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
(69)us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
Cash flow hedges      
Other Comprehensive Income (Loss), Derivatives Qualifying as Hedges, Net of Tax [Abstract]      
Net unrealized gains/(losses) arising during the period before tax 98us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
(525)us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
141us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
Net unrealized gains/(losses) arising during the period tax effect (39)us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
206us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
(55)us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
Net unrealized gains/(losses) arising during the period after tax 59us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
(319)us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
86us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
Reclassification adjustment for realized (gains)/losses included in net income before tax (24)us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
101us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
(28)us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
Reclassification adjustment for realized (gains)/losses included in net income tax effect 9us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
(41)us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
11us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
Reclassification adjustment for realized (gains)/losses included in net income after tax (15)us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
60us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
(17)us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
Net change before tax 74us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
(424)us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
113us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
Net change tax effect (30)us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
165us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
(44)us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
Net change 44us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
(259)us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
69us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
Defined benefit pension and OPEB plans      
Defined benefit pension and OPEB plans:      
Prior service credits arising during the period before tax (53)us-gaap_OtherComprehensiveIncomeDefinedBenefitPlanNetPriorServiceCostCreditArisingDuringPeriodBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
0us-gaap_OtherComprehensiveIncomeDefinedBenefitPlanNetPriorServiceCostCreditArisingDuringPeriodBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
6us-gaap_OtherComprehensiveIncomeDefinedBenefitPlanNetPriorServiceCostCreditArisingDuringPeriodBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
Prior service credits arising during the period tax effect 21us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansBenefitPlanImprovementTaxEffect
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
0us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansBenefitPlanImprovementTaxEffect
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
(2)us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansBenefitPlanImprovementTaxEffect
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
Prior service credits arising during the period after tax (32)us-gaap_OtherComprehensiveIncomeDefinedBenefitPlanNetPriorServiceCostsCreditArisingDuringPeriodNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
0us-gaap_OtherComprehensiveIncomeDefinedBenefitPlanNetPriorServiceCostsCreditArisingDuringPeriodNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
4us-gaap_OtherComprehensiveIncomeDefinedBenefitPlanNetPriorServiceCostsCreditArisingDuringPeriodNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
Net gains/(losses) arising during the period before tax (1,697)us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansNetUnamortizedGainLossArisingDuringPeriodBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
2,055us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansNetUnamortizedGainLossArisingDuringPeriodBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
(537)us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansNetUnamortizedGainLossArisingDuringPeriodBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
Net gains/(losses) arising during the period tax effect 688us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
(750)us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
228us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
Net gains/(losses) arising during the period after tax (1,009)us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
1,305us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
(309)us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
Reclassification adjustments included in net income, amortization of net loss before tax 72us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
321us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
324us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
Reclassification adjustments included in net income, amortization of net loss tax effect (29)us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
(124)us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
(126)us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
Reclassification adjustments included in net income, amortization of net loss after tax 43us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
197us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
198us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
Reclassification adjustments included in net income, prior service costs/(credits) before tax (44)us-gaap_OtherComprehensiveIncomeLossAmortizationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetPriorServiceCostCreditBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
(43)us-gaap_OtherComprehensiveIncomeLossAmortizationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetPriorServiceCostCreditBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
(41)us-gaap_OtherComprehensiveIncomeLossAmortizationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetPriorServiceCostCreditBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
Reclassification adjustments included in net income, prior service costs/(credits) tax effect 17us-gaap_OtherComprehensiveIncomeLossAmortizationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetPriorServiceCostCreditTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
17us-gaap_OtherComprehensiveIncomeLossAmortizationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetPriorServiceCostCreditTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
16us-gaap_OtherComprehensiveIncomeLossAmortizationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetPriorServiceCostCreditTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
Reclassification adjustments included in net income, prior service costs/(credits) after tax (27)us-gaap_OtherComprehensiveIncomeLossAmortizationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetPriorServiceCostCreditNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
(26)us-gaap_OtherComprehensiveIncomeLossAmortizationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetPriorServiceCostCreditNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
(25)us-gaap_OtherComprehensiveIncomeLossAmortizationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetPriorServiceCostCreditNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
Foreign exchange and other before tax 39jpm_OtherComprehensiveIncomeLossForeignCurrencyExchangeRateAndOtherChangesBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
(14)jpm_OtherComprehensiveIncomeLossForeignCurrencyExchangeRateAndOtherChangesBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
(21)jpm_OtherComprehensiveIncomeLossForeignCurrencyExchangeRateAndOtherChangesBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
Foreign exchange and other tax effect (32)jpm_OtherComprehensiveIncomeLossForeignCurrencyExchangeRateAndOtherChangesTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
5jpm_OtherComprehensiveIncomeLossForeignCurrencyExchangeRateAndOtherChangesTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
8jpm_OtherComprehensiveIncomeLossForeignCurrencyExchangeRateAndOtherChangesTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
Foreign exchange and other after tax 7jpm_OtherComprehensiveIncomeLossForeignCurrencyExchangeRateAndOtherChangesNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
(9)jpm_OtherComprehensiveIncomeLossForeignCurrencyExchangeRateAndOtherChangesNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
(13)jpm_OtherComprehensiveIncomeLossForeignCurrencyExchangeRateAndOtherChangesNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
Net change before tax (1,683)us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
2,319us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
(269)us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
Net change tax effect 665us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
(852)us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
124us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
Net change, defined benefit pension and OPEB plans (1,018)us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
1,467us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
(145)us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
Accumulated other comprehensive income/(loss) [Member]      
Defined benefit pension and OPEB plans:      
Total other comprehensive income/(loss) before tax 1,567us-gaap_OtherComprehensiveIncomeLossBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedOtherComprehensiveIncomeMember
(4,793)us-gaap_OtherComprehensiveIncomeLossBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedOtherComprehensiveIncomeMember
5,147us-gaap_OtherComprehensiveIncomeLossBeforeTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedOtherComprehensiveIncomeMember
Total other comprehensive income/(loss) tax effect (577)us-gaap_OtherComprehensiveIncomeLossTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedOtherComprehensiveIncomeMember
1,890us-gaap_OtherComprehensiveIncomeLossTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedOtherComprehensiveIncomeMember
(1,989)us-gaap_OtherComprehensiveIncomeLossTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedOtherComprehensiveIncomeMember
Total other comprehensive income/(loss), after–tax $ 990us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedOtherComprehensiveIncomeMember
$ (2,903)us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedOtherComprehensiveIncomeMember
$ 3,158us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedOtherComprehensiveIncomeMember