XML 88 R158.htm IDEA: XBRL DOCUMENT v2.4.1.9
Loans - Consumer, Excluding Credit Card Loans, PCI Loans (Details) (USD $)
In Millions, unless otherwise specified
12 Months Ended
Dec. 31, 2014
Dec. 31, 2013
Dec. 31, 2012
Loans and Leases Receivable Disclosure [Line Items]      
Total retained loans $ 747,508jpm_LoansReceivableHeldForInvestmentNetOfDeferredIncome $ 724,177jpm_LoansReceivableHeldForInvestmentNetOfDeferredIncome $ 726,835jpm_LoansReceivableHeldForInvestmentNetOfDeferredIncome
Consumer, excluding credit card      
Loans and Leases Receivable Disclosure [Line Items]      
Total retained loans 294,979jpm_LoansReceivableHeldForInvestmentNetOfDeferredIncome
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
288,449jpm_LoansReceivableHeldForInvestmentNetOfDeferredIncome
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
292,620jpm_LoansReceivableHeldForInvestmentNetOfDeferredIncome
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity      
Loans and Leases Receivable Disclosure [Line Items]      
Total retained loans 17,095jpm_LoansReceivableHeldForInvestmentNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
18,927jpm_LoansReceivableHeldForInvestmentNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Related allowance for loan losses 1,758us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesAllowanceForLoanLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
1,758us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesAllowanceForLoanLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Total loans 17,740us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
19,830us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
% of 30 days past due to total loans 8.15%jpm_PercentageOfLoansThirtyPlusDaysPastDueToTotalUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
8.55%jpm_PercentageOfLoansThirtyPlusDaysPastDueToTotalUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity | California      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 10,671us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_CA
11,937us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_CA
 
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity | New York      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 876us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_NY
962us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_NY
 
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity | Illinois      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 405us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_IL
451us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_IL
 
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity | Florida      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 1,696us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_FL
1,865us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_FL
 
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity | Texas      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 273us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_TX
327us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_TX
 
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity | New Jersey      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 348us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_NJ
381us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_NJ
 
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity | Arizona      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 323us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_AZ
361us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_AZ
 
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity | Washington      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 959us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_WA
1,072us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_WA
 
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity | Michigan      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 53us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_MI
62us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_MI
 
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity | Ohio      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 20us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_OH
23us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_OH
 
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity | All other      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 2,116us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= jpm_OtherGeographicalAreasMember
2,389us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= jpm_OtherGeographicalAreasMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity | Current and less than 30 days past due and still accruing      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 16,295us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_CurrentAndLessThan30DaysPastDueAndStillAccruingMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
18,135us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_CurrentAndLessThan30DaysPastDueAndStillAccruingMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity | Days Past Due, 30 to 149      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 445us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_DaysPastDue30To149Member
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
583us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_DaysPastDue30To149Member
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity | 150 days past due      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 1,000us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_DaysPastDue150OrMoreMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
1,112us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_DaysPastDue150OrMoreMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity | Refreshed FICO Scores Equal to or Greater than 660 | Current Estimated LTV Ratio Greater than 125%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 513us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioGreaterThan125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
1,168us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioGreaterThan125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity | Refreshed FICO Scores Equal to or Greater than 660 | Current Estimated LTV Ratio Between 101% and 125%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 2,245us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween101And125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
3,248us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween101And125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity | Refreshed FICO Scores Equal to or Greater than 660 | Current Estimated LTV Ratio Between 80% and 100%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 4,171us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween80And100PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
4,473us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween80And100PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity | Refreshed FICO Scores Equal to or Greater than 660 | Current Estimated LTV Ratio Less than 80%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 5,824us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioLessThan80PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
5,077us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioLessThan80PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity | Refreshed FICO Scores Less than 660 | Current Estimated LTV Ratio Greater than 125%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 273us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioGreaterThan125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
662us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioGreaterThan125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity | Refreshed FICO Scores Less than 660 | Current Estimated LTV Ratio Between 101% and 125%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 1,073us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween101And125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
1,541us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween101And125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity | Refreshed FICO Scores Less than 660 | Current Estimated LTV Ratio Between 80% and 100%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 1,647us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween80And100PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
1,782us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween80And100PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Home Equity | Refreshed FICO Scores Less than 660 | Current Estimated LTV Ratio Less than 80%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 1,994us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioLessThan80PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
1,879us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioLessThan80PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedHomeEquityMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage      
Loans and Leases Receivable Disclosure [Line Items]      
Total retained loans 10,220jpm_LoansReceivableHeldForInvestmentNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
12,038jpm_LoansReceivableHeldForInvestmentNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Related allowance for loan losses 1,193us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesAllowanceForLoanLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
1,726us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesAllowanceForLoanLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Total loans 10,249us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
11,876us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
% of 30 days past due to total loans 13.05%jpm_PercentageOfLoansThirtyPlusDaysPastDueToTotalUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
14.80%jpm_PercentageOfLoansThirtyPlusDaysPastDueToTotalUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage | California      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 5,965us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_CA
6,845us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_CA
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage | New York      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 672us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_NY
807us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_NY
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage | Illinois      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 301us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_IL
353us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_IL
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage | Florida      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 689us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_FL
826us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_FL
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage | Texas      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 92us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_TX
106us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_TX
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage | New Jersey      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 279us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_NJ
334us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_NJ
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage | Arizona      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 167us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_AZ
187us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_AZ
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage | Washington      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 225us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_WA
266us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_WA
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage | Michigan      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 166us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_MI
189us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_MI
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage | Ohio      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 48us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_OH
55us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_OH
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage | All other      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 1,645us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= jpm_OtherGeographicalAreasMember
1,908us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= jpm_OtherGeographicalAreasMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage | Current and less than 30 days past due and still accruing      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 8,912us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_CurrentAndLessThan30DaysPastDueAndStillAccruingMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
10,118us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_CurrentAndLessThan30DaysPastDueAndStillAccruingMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage | Days Past Due, 30 to 149      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 500us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_DaysPastDue30To149Member
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
589us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_DaysPastDue30To149Member
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage | 150 days past due      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 837us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_DaysPastDue150OrMoreMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
1,169us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_DaysPastDue150OrMoreMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage | Refreshed FICO Scores Equal to or Greater than 660 | Current Estimated LTV Ratio Greater than 125%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 45us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioGreaterThan125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
240us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioGreaterThan125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage | Refreshed FICO Scores Equal to or Greater than 660 | Current Estimated LTV Ratio Between 101% and 125%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 456us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween101And125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
1,017us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween101And125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage | Refreshed FICO Scores Equal to or Greater than 660 | Current Estimated LTV Ratio Between 80% and 100%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 2,154us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween80And100PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
2,787us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween80And100PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage | Refreshed FICO Scores Equal to or Greater than 660 | Current Estimated LTV Ratio Less than 80%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 3,663us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioLessThan80PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
2,897us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioLessThan80PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage | Refreshed FICO Scores Less than 660 | Current Estimated LTV Ratio Greater than 125%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 97us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioGreaterThan125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
290us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioGreaterThan125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage | Refreshed FICO Scores Less than 660 | Current Estimated LTV Ratio Between 101% and 125%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 402us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween101And125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
884us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween101And125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage | Refreshed FICO Scores Less than 660 | Current Estimated LTV Ratio Between 80% and 100%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 1,316us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween80And100PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
1,699us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween80And100PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Prime Mortgage | Refreshed FICO Scores Less than 660 | Current Estimated LTV Ratio Less than 80%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 2,116us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioLessThan80PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
2,062us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioLessThan80PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedPrimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage      
Loans and Leases Receivable Disclosure [Line Items]      
Total retained loans 3,673jpm_LoansReceivableHeldForInvestmentNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
4,175jpm_LoansReceivableHeldForInvestmentNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Related allowance for loan losses 180us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesAllowanceForLoanLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
180us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesAllowanceForLoanLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Total loans 4,652us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
5,471us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
% of 30 days past due to total loans 23.37%jpm_PercentageOfLoansThirtyPlusDaysPastDueToTotalUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
26.67%jpm_PercentageOfLoansThirtyPlusDaysPastDueToTotalUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage | California      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 1,138us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_CA
1,293us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_CA
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage | New York      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 463us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_NY
563us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_NY
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage | Illinois      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 229us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_IL
283us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_IL
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage | Florida      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 432us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_FL
526us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_FL
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage | Texas      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 281us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_TX
328us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_TX
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage | New Jersey      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 165us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_NJ
213us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_NJ
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage | Arizona      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 85us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_AZ
95us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_AZ
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage | Washington      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 95us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_WA
112us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_WA
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage | Michigan      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 130us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_MI
145us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_MI
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage | Ohio      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 72us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_OH
84us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_OH
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage | All other      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 1,562us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= jpm_OtherGeographicalAreasMember
1,829us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= jpm_OtherGeographicalAreasMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage | Current and less than 30 days past due and still accruing      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 3,565us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_CurrentAndLessThan30DaysPastDueAndStillAccruingMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
4,012us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_CurrentAndLessThan30DaysPastDueAndStillAccruingMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage | Days Past Due, 30 to 149      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 536us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_DaysPastDue30To149Member
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
662us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_DaysPastDue30To149Member
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage | 150 days past due      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 551us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_DaysPastDue150OrMoreMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
797us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_DaysPastDue150OrMoreMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage | Refreshed FICO Scores Equal to or Greater than 660 | Current Estimated LTV Ratio Greater than 125%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 34us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioGreaterThan125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
115us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioGreaterThan125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage | Refreshed FICO Scores Equal to or Greater than 660 | Current Estimated LTV Ratio Between 101% and 125%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 215us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween101And125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
316us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween101And125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage | Refreshed FICO Scores Equal to or Greater than 660 | Current Estimated LTV Ratio Between 80% and 100%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 519us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween80And100PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
544us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween80And100PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage | Refreshed FICO Scores Equal to or Greater than 660 | Current Estimated LTV Ratio Less than 80%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 719us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioLessThan80PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
521us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioLessThan80PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage | Refreshed FICO Scores Less than 660 | Current Estimated LTV Ratio Greater than 125%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 160us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioGreaterThan125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
459us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioGreaterThan125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage | Refreshed FICO Scores Less than 660 | Current Estimated LTV Ratio Between 101% and 125%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 509us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween101And125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
919us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween101And125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage | Refreshed FICO Scores Less than 660 | Current Estimated LTV Ratio Between 80% and 100%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 1,006us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween80And100PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
1,197us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween80And100PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Subprime Mortgage | Refreshed FICO Scores Less than 660 | Current Estimated LTV Ratio Less than 80%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 1,490us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioLessThan80PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
1,400us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioLessThan80PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedSubprimeMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs      
Loans and Leases Receivable Disclosure [Line Items]      
Total retained loans 15,708jpm_LoansReceivableHeldForInvestmentNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
17,915jpm_LoansReceivableHeldForInvestmentNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Related allowance for loan losses 194us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesAllowanceForLoanLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
494us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesAllowanceForLoanLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Total loans 16,496us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
19,223us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
% of 30 days past due to total loans 16.26%jpm_PercentageOfLoansThirtyPlusDaysPastDueToTotalUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
19.36%jpm_PercentageOfLoansThirtyPlusDaysPastDueToTotalUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs | California      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 9,190us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_CA
10,419us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_CA
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs | New York      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 933us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_NY
1,196us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_NY
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs | Illinois      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 397us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_IL
481us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_IL
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs | Florida      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 1,440us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_FL
1,817us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_FL
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs | Texas      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 85us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_TX
100us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_TX
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs | New Jersey      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 553us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_NJ
701us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_NJ
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs | Arizona      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 227us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_AZ
264us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_AZ
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs | Washington      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 395us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_WA
463us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_WA
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs | Michigan      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 182us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_MI
206us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_MI
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs | Ohio      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 69us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_OH
75us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_OH
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs | All other      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 3,025us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= jpm_OtherGeographicalAreasMember
3,501us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= jpm_OtherGeographicalAreasMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs | Current and less than 30 days past due and still accruing      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 13,814us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_CurrentAndLessThan30DaysPastDueAndStillAccruingMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
15,501us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_CurrentAndLessThan30DaysPastDueAndStillAccruingMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs | Days Past Due, 30 to 149      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 858us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_DaysPastDue30To149Member
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
1,006us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_DaysPastDue30To149Member
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs | 150 days past due      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 1,824us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_DaysPastDue150OrMoreMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
2,716us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_DaysPastDue150OrMoreMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs | Refreshed FICO Scores Equal to or Greater than 660 | Current Estimated LTV Ratio Greater than 125%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 89us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioGreaterThan125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
301us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioGreaterThan125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs | Refreshed FICO Scores Equal to or Greater than 660 | Current Estimated LTV Ratio Between 101% and 125%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 575us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween101And125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
1,164us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween101And125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs | Refreshed FICO Scores Equal to or Greater than 660 | Current Estimated LTV Ratio Between 80% and 100%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 2,418us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween80And100PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
3,311us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween80And100PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs | Refreshed FICO Scores Equal to or Greater than 660 | Current Estimated LTV Ratio Less than 80%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 6,593us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioLessThan80PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
5,671us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioLessThan80PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs | Refreshed FICO Scores Less than 660 | Current Estimated LTV Ratio Greater than 125%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 150us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioGreaterThan125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
575us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioGreaterThan125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs | Refreshed FICO Scores Less than 660 | Current Estimated LTV Ratio Between 101% and 125%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 771us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween101And125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
1,563us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween101And125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs | Refreshed FICO Scores Less than 660 | Current Estimated LTV Ratio Between 80% and 100%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 1,996us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween80And100PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
2,769us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween80And100PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired, Option ARMs | Refreshed FICO Scores Less than 660 | Current Estimated LTV Ratio Less than 80%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 3,904us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioLessThan80PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
3,869us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioLessThan80PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedOptionArmsMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired      
Loans and Leases Receivable Disclosure [Line Items]      
Weighted Average Life of PCI Portfolio 8 years    
Total retained loans 46,696jpm_LoansReceivableHeldForInvestmentNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
53,055jpm_LoansReceivableHeldForInvestmentNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Related allowance for loan losses 3,325us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesAllowanceForLoanLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
4,158us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesAllowanceForLoanLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Total loans 49,137us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
56,400us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
% of 30 days past due to total loans 13.33%jpm_PercentageOfLoansThirtyPlusDaysPastDueToTotalUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
15.31%jpm_PercentageOfLoansThirtyPlusDaysPastDueToTotalUnpaidPrincipalBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired | California      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 26,964us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_CA
30,494us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_CA
 
Consumer, excluding credit card | Purchased Credit-Impaired | New York      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 2,944us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_NY
3,528us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_NY
 
Consumer, excluding credit card | Purchased Credit-Impaired | Illinois      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 1,332us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_IL
1,568us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_IL
 
Consumer, excluding credit card | Purchased Credit-Impaired | Florida      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 4,257us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_FL
5,034us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_FL
 
Consumer, excluding credit card | Purchased Credit-Impaired | Texas      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 731us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_TX
861us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_TX
 
Consumer, excluding credit card | Purchased Credit-Impaired | New Jersey      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 1,345us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_NJ
1,629us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_NJ
 
Consumer, excluding credit card | Purchased Credit-Impaired | Arizona      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 802us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_AZ
907us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_AZ
 
Consumer, excluding credit card | Purchased Credit-Impaired | Washington      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 1,674us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_WA
1,913us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_WA
 
Consumer, excluding credit card | Purchased Credit-Impaired | Michigan      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 531us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_MI
602us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_MI
 
Consumer, excluding credit card | Purchased Credit-Impaired | Ohio      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 209us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_OH
237us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= stpr_OH
 
Consumer, excluding credit card | Purchased Credit-Impaired | All other      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 8,348us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= jpm_OtherGeographicalAreasMember
9,627us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
/ us-gaap_StatementGeographicalAxis
= jpm_OtherGeographicalAreasMember
 
Consumer, excluding credit card | Purchased Credit-Impaired | Current and less than 30 days past due and still accruing      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 42,586us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_CurrentAndLessThan30DaysPastDueAndStillAccruingMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
47,766us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_CurrentAndLessThan30DaysPastDueAndStillAccruingMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired | Days Past Due, 30 to 149      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 2,339us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_DaysPastDue30To149Member
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
2,840us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_DaysPastDue30To149Member
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired | 150 days past due      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 4,212us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_DaysPastDue150OrMoreMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
5,794us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByDelinquencyStatusAxis
= jpm_DaysPastDue150OrMoreMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired | Refreshed FICO Scores Equal to or Greater than 660 | Current Estimated LTV Ratio Greater than 125%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 681us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioGreaterThan125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
1,824us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioGreaterThan125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired | Refreshed FICO Scores Equal to or Greater than 660 | Current Estimated LTV Ratio Between 101% and 125%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 3,491us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween101And125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
5,745us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween101And125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired | Refreshed FICO Scores Equal to or Greater than 660 | Current Estimated LTV Ratio Between 80% and 100%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 9,262us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween80And100PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
11,115us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween80And100PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired | Refreshed FICO Scores Equal to or Greater than 660 | Current Estimated LTV Ratio Less than 80%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 16,799us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioLessThan80PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
14,166us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioLessThan80PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresEqualToOrGreaterThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired | Refreshed FICO Scores Less than 660 | Current Estimated LTV Ratio Greater than 125%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 680us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioGreaterThan125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
1,986us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioGreaterThan125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired | Refreshed FICO Scores Less than 660 | Current Estimated LTV Ratio Between 101% and 125%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 2,755us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween101And125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
4,907us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween101And125PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired | Refreshed FICO Scores Less than 660 | Current Estimated LTV Ratio Between 80% and 100%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans 5,965us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween80And100PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
7,447us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioBetween80And100PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
 
Consumer, excluding credit card | Purchased Credit-Impaired | Refreshed FICO Scores Less than 660 | Current Estimated LTV Ratio Less than 80%      
Loans and Leases Receivable Disclosure [Line Items]      
Total loans $ 9,504us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioLessThan80PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember
$ 9,210us-gaap_CertainLoansAcquiredInTransferNotAccountedForAsDebtSecuritiesOutstandingBalance
/ jpm_FinancingReceivableByCurrentEstimatedLoanToValueRatioAxis
= jpm_CurrentEstimatedLtvRatioLessThan80PercentMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= jpm_PurchasedCreditImpairedMember
/ us-gaap_InternalCreditAssessmentAxis
= jpm_RefreshedFicoScoresLessThan660Member
/ jpm_PortfolioSegmentAxis
= jpm_ConsumerExcludingCreditCardLoanPortfolioSegmentMember