Annual report pursuant to Section 13 and 15(d)

Long-Term Debt - Aggregate Annual Maturities (Details)

v2.4.1.9
Long-Term Debt - Aggregate Annual Maturities (Details) (USD $)
In Millions, unless otherwise specified
Dec. 31, 2014
Dec. 31, 2013
Long-term Debt, Fiscal Year Maturity [Abstract]    
Long-term Debt $ 243,139us-gaap_LongTermDebt $ 249,674us-gaap_LongTermDebt
Bank of America Corporation    
Long-term Debt, Fiscal Year Maturity [Abstract]    
2015 21,684us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
 
2016 25,272us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
 
2017 25,945us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
 
2018 24,842us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
 
2019 19,312us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
 
Thereafter 68,716us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
 
Long-term Debt 185,771us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
194,103us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
Bank of America Corporation | Senior notes    
Long-term Debt, Fiscal Year Maturity [Abstract]    
2015 14,905us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorNotesMember
 
2016 17,373us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorNotesMember
 
2017 18,935us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorNotesMember
 
2018 20,006us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorNotesMember
 
2019 16,206us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorNotesMember
 
Thereafter 40,203us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorNotesMember
 
Long-term Debt 127,628us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorNotesMember
 
Bank of America Corporation | Senior structured notes    
Long-term Debt, Fiscal Year Maturity [Abstract]    
2015 5,558us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorSubordinatedNotesMember
 
2016 2,825us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorSubordinatedNotesMember
 
2017 1,791us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorSubordinatedNotesMember
 
2018 1,885us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorSubordinatedNotesMember
 
2019 1,526us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorSubordinatedNotesMember
 
Thereafter 8,583us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorSubordinatedNotesMember
 
Long-term Debt 22,168us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorSubordinatedNotesMember
30,575us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorSubordinatedNotesMember
Bank of America Corporation | Subordinated notes    
Long-term Debt, Fiscal Year Maturity [Abstract]    
2015 1,221us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SubordinatedDebtMember
 
2016 5,074us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SubordinatedDebtMember
 
2017 5,219us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SubordinatedDebtMember
 
2018 2,951us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SubordinatedDebtMember
 
2019 1,580us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SubordinatedDebtMember
 
Thereafter 12,655us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SubordinatedDebtMember
 
Long-term Debt 28,700us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SubordinatedDebtMember
 
Bank of America Corporation | Junior subordinated notes    
Long-term Debt, Fiscal Year Maturity [Abstract]    
2015 0us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_JuniorSubordinatedDebtMember
 
2016 0us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_JuniorSubordinatedDebtMember
 
2017 0us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_JuniorSubordinatedDebtMember
 
2018 0us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_JuniorSubordinatedDebtMember
 
2019 0us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_JuniorSubordinatedDebtMember
 
Thereafter 7,275us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_JuniorSubordinatedDebtMember
 
Long-term Debt 7,275us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_JuniorSubordinatedDebtMember
 
Bank of America, N.A.    
Long-term Debt, Fiscal Year Maturity [Abstract]    
2015 6,431us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
 
2016 10,868us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
 
2017 12,279us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
 
2018 10us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
 
2019 2,486us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
 
Thereafter 3,392us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
 
Long-term Debt 35,466us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
29,440us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
Bank of America, N.A. | Senior notes    
Long-term Debt, Fiscal Year Maturity [Abstract]    
2015 777us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorNotesMember
 
2016 2,498us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorNotesMember
 
2017 5,162us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorNotesMember
 
2018 0us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorNotesMember
 
2019 19us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorNotesMember
 
Thereafter 123us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorNotesMember
 
Long-term Debt 8,579us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorNotesMember
 
Bank of America, N.A. | Subordinated notes    
Long-term Debt, Fiscal Year Maturity [Abstract]    
2015 0us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SubordinatedDebtMember
 
2016 1,069us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SubordinatedDebtMember
 
2017 3,553us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SubordinatedDebtMember
 
2018 0us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SubordinatedDebtMember
 
2019 1us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SubordinatedDebtMember
 
Thereafter 1,699us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SubordinatedDebtMember
 
Long-term Debt 6,322us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SubordinatedDebtMember
 
Bank of America, N.A. | Advances from Federal Home Loan Banks    
Long-term Debt, Fiscal Year Maturity [Abstract]    
2015 4,503us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_FederalHomeLoanBankAdvancesMember
 
2016 6,003us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_FederalHomeLoanBankAdvancesMember
 
2017 10us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_FederalHomeLoanBankAdvancesMember
 
2018 10us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_FederalHomeLoanBankAdvancesMember
 
2019 16us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_FederalHomeLoanBankAdvancesMember
 
Thereafter 141us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_FederalHomeLoanBankAdvancesMember
 
Long-term Debt 10,683us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_FederalHomeLoanBankAdvancesMember
 
Bank of America, N.A. | Securitizations and other BANA VIEs    
Long-term Debt, Fiscal Year Maturity [Abstract]    
2015 1,151us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= bac_SecuritizationsMember
 
2016 1,298us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= bac_SecuritizationsMember
 
2017 3,554us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= bac_SecuritizationsMember
 
2018 0us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= bac_SecuritizationsMember
 
2019 2,450us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= bac_SecuritizationsMember
 
Thereafter 1,429us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= bac_SecuritizationsMember
 
Long-term Debt 9,882us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= bac_SecuritizationsMember
13,367us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= bac_SubsidiariesBankofAmericaN.A.Member
/ us-gaap_LongtermDebtTypeAxis
= bac_SecuritizationsMember
Subsidiaries    
Long-term Debt, Fiscal Year Maturity [Abstract]    
2015 2,609us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
 
2016 3,408us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
 
2017 2,981us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
 
2018 1,428us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
 
2019 1,058us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
 
Thereafter 10,418us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
 
Long-term Debt 21,902us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
26,131us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
Subsidiaries | Senior notes    
Long-term Debt, Fiscal Year Maturity [Abstract]    
2015 21us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorNotesMember
 
2016 0us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorNotesMember
 
2017 1us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorNotesMember
 
2018 0us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorNotesMember
 
2019 0us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorNotesMember
 
Thereafter 0us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorNotesMember
 
Long-term Debt 22us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_SeniorNotesMember
 
Subsidiaries | Junior subordinated notes    
Long-term Debt, Fiscal Year Maturity [Abstract]    
2015 0us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_JuniorSubordinatedDebtMember
 
2016 0us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_JuniorSubordinatedDebtMember
 
2017 0us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_JuniorSubordinatedDebtMember
 
2018 0us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_JuniorSubordinatedDebtMember
 
2019 0us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_JuniorSubordinatedDebtMember
 
Thereafter 405us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_JuniorSubordinatedDebtMember
 
Long-term Debt 405us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_JuniorSubordinatedDebtMember
 
Subsidiaries | Structured liabilities    
Long-term Debt, Fiscal Year Maturity [Abstract]    
2015 2,314us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_StructuredFinanceMember
 
2016 2,133us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_StructuredFinanceMember
 
2017 2,296us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_StructuredFinanceMember
 
2018 1,281us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_StructuredFinanceMember
 
2019 1,027us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_StructuredFinanceMember
 
Thereafter 6,920us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_StructuredFinanceMember
 
Long-term Debt 15,971us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_StructuredFinanceMember
16,913us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= us-gaap_StructuredFinanceMember
Subsidiaries | Non-core/non-bank VIEs    
Long-term Debt, Fiscal Year Maturity [Abstract]    
2015 20us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= bac_NoncoreNonbankVariableInterestEntityMember
 
2016 348us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= bac_NoncoreNonbankVariableInterestEntityMember
 
2017 255us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= bac_NoncoreNonbankVariableInterestEntityMember
 
2018 102us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= bac_NoncoreNonbankVariableInterestEntityMember
 
2019 27us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= bac_NoncoreNonbankVariableInterestEntityMember
 
Thereafter 2,673us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= bac_NoncoreNonbankVariableInterestEntityMember
 
Long-term Debt 3,425us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= bac_NoncoreNonbankVariableInterestEntityMember
 
Subsidiaries | Other    
Long-term Debt, Fiscal Year Maturity [Abstract]    
2015 254us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= bac_OtherLongTermDebtMember
 
2016 927us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= bac_OtherLongTermDebtMember
 
2017 429us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= bac_OtherLongTermDebtMember
 
2018 45us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= bac_OtherLongTermDebtMember
 
2019 4us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= bac_OtherLongTermDebtMember
 
Thereafter 420us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= bac_OtherLongTermDebtMember
 
Long-term Debt 2,079us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= bac_OtherLongTermDebtMember
2,422us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= us-gaap_SubsidiariesMember
/ us-gaap_LongtermDebtTypeAxis
= bac_OtherLongTermDebtMember
Consolidated Entity Excluding Variable Interest Entities (VIE) [Member]    
Long-term Debt, Fiscal Year Maturity [Abstract]    
2015 30,724us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
/ dei_LegalEntityAxis
= us-gaap_ConsolidatedEntityExcludingVariableInterestEntitiesVIEMember
 
2016 39,548us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
/ dei_LegalEntityAxis
= us-gaap_ConsolidatedEntityExcludingVariableInterestEntitiesVIEMember
 
2017 41,205us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
/ dei_LegalEntityAxis
= us-gaap_ConsolidatedEntityExcludingVariableInterestEntitiesVIEMember
 
2018 26,280us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
/ dei_LegalEntityAxis
= us-gaap_ConsolidatedEntityExcludingVariableInterestEntitiesVIEMember
 
2019 22,856us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
/ dei_LegalEntityAxis
= us-gaap_ConsolidatedEntityExcludingVariableInterestEntitiesVIEMember
 
Thereafter 82,526us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
/ dei_LegalEntityAxis
= us-gaap_ConsolidatedEntityExcludingVariableInterestEntitiesVIEMember
 
Long-term Debt $ 243,139us-gaap_LongTermDebt
/ dei_LegalEntityAxis
= us-gaap_ConsolidatedEntityExcludingVariableInterestEntitiesVIEMember