Annual report pursuant to Section 13 and 15(d)

Commitments and Contingencies - Additional Information (Details)

v2.4.1.9
Commitments and Contingencies - Additional Information (Details) (USD $)
12 Months Ended
Dec. 31, 2014
Dec. 31, 2013
Operating Leases, Future Minimum Payments Due [Abstract]    
2015 $ 2,600,000,000us-gaap_OperatingLeasesFutureMinimumPaymentsReceivableCurrent  
2016 2,300,000,000us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears  
2017 1,900,000,000us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears  
2018 1,500,000,000us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears  
2019 1,200,000,000us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears  
Thereafter 4,900,000,000us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter  
Notional amount of derivatives 1,134,132,000,000invest_DerivativeNotionalAmount 1,328,787,000,000invest_DerivativeNotionalAmount
Commercial Banks    
Operating Leases, Future Minimum Payments Due [Abstract]    
Notional amount of derivatives 527,000,000invest_DerivativeNotionalAmount
/ us-gaap_CounterpartyNameAxis
= bac_CommercialBanksMember
1,800,000,000invest_DerivativeNotionalAmount
/ us-gaap_CounterpartyNameAxis
= bac_CommercialBanksMember
Unconsolidated VIEs    
Operating Leases, Future Minimum Payments Due [Abstract]    
Notional amount of derivatives 1,200,000,000invest_DerivativeNotionalAmount
/ us-gaap_CounterpartyNameAxis
= us-gaap_VariableInterestEntityNotPrimaryBeneficiaryMember
1,300,000,000invest_DerivativeNotionalAmount
/ us-gaap_CounterpartyNameAxis
= us-gaap_VariableInterestEntityNotPrimaryBeneficiaryMember
Life Insurance Book Value Protection    
Operating Leases, Future Minimum Payments Due [Abstract]    
Notional amount of derivatives 13,600,000,000invest_DerivativeNotionalAmount
/ us-gaap_GuaranteeObligationsByNatureAxis
= bac_LifeInsuranceBookValueProtectionMember
13,400,000,000invest_DerivativeNotionalAmount
/ us-gaap_GuaranteeObligationsByNatureAxis
= bac_LifeInsuranceBookValueProtectionMember
Net fair value of bank-owned life insurance book value protection 25,000,000us-gaap_GuaranteesFairValueDisclosure
/ us-gaap_GuaranteeObligationsByNatureAxis
= bac_LifeInsuranceBookValueProtectionMember
39,000,000us-gaap_GuaranteesFairValueDisclosure
/ us-gaap_GuaranteeObligationsByNatureAxis
= bac_LifeInsuranceBookValueProtectionMember
Maximum potential exposure 3,100,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_GuaranteeObligationsByNatureAxis
= bac_LifeInsuranceBookValueProtectionMember
3,000,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_GuaranteeObligationsByNatureAxis
= bac_LifeInsuranceBookValueProtectionMember
Employee Retirement Protection    
Operating Leases, Future Minimum Payments Due [Abstract]    
Notional amount of derivatives 500,000,000invest_DerivativeNotionalAmount
/ us-gaap_GuaranteeObligationsByNatureAxis
= bac_EmployeeRetirementProtectionMember
4,600,000,000invest_DerivativeNotionalAmount
/ us-gaap_GuaranteeObligationsByNatureAxis
= bac_EmployeeRetirementProtectionMember
Other Guarantee    
Operating Leases, Future Minimum Payments Due [Abstract]    
Maximum potential exposure 6,200,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_GuaranteeObligationsByNatureAxis
= bac_OtherGuaranteesMember
6,900,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_GuaranteeObligationsByNatureAxis
= bac_OtherGuaranteesMember
Loan commitments    
Loss Contingencies [Line Items]    
Other commitments 1,800,000,000us-gaap_OtherCommitment
/ us-gaap_OtherCommitmentsAxis
= us-gaap_LoanPurchaseCommitmentsMember
1,500,000,000us-gaap_OtherCommitment
/ us-gaap_OtherCommitmentsAxis
= us-gaap_LoanPurchaseCommitmentsMember
Forward-Dated Resale and Securities Borrowing Agreements    
Loss Contingencies [Line Items]    
Other commitments 73,200,000,000us-gaap_OtherCommitment
/ us-gaap_OtherCommitmentsAxis
= bac_ForwardDatedResaleandSecuritiesBorrowingAgreementsMember
75,500,000,000us-gaap_OtherCommitment
/ us-gaap_OtherCommitmentsAxis
= bac_ForwardDatedResaleandSecuritiesBorrowingAgreementsMember
Forward-Dated Repurchase and Securities Lending Agreements    
Loss Contingencies [Line Items]    
Other commitments 55,800,000,000us-gaap_OtherCommitment
/ us-gaap_OtherCommitmentsAxis
= bac_ForwardDatedRepurchaseandSecuritiesLendingAgreementsMember
38,300,000,000us-gaap_OtherCommitment
/ us-gaap_OtherCommitmentsAxis
= bac_ForwardDatedRepurchaseandSecuritiesLendingAgreementsMember
Unfunded Equity Investment Commitments    
Loss Contingencies [Line Items]    
Other commitments 57,000,000us-gaap_OtherCommitment
/ us-gaap_OtherCommitmentsAxis
= bac_UnfundedEquityInvestmentCommitmentsMember
195,000,000us-gaap_OtherCommitment
/ us-gaap_OtherCommitmentsAxis
= bac_UnfundedEquityInvestmentCommitmentsMember
Payment Protection Insurance    
Operating Leases, Future Minimum Payments Due [Abstract]    
Loss contingency accrual 378,000,000us-gaap_LossContingencyAccrualAtCarryingValue
/ us-gaap_LossContingenciesByNatureOfContingencyAxis
= bac_PaymentProtectionInsuranceMember
381,000,000us-gaap_LossContingencyAccrualAtCarryingValue
/ us-gaap_LossContingenciesByNatureOfContingencyAxis
= bac_PaymentProtectionInsuranceMember
Provision 621,000,000us-gaap_LossContingencyAccrualProvision
/ us-gaap_LossContingenciesByNatureOfContingencyAxis
= bac_PaymentProtectionInsuranceMember
258,000,000us-gaap_LossContingencyAccrualProvision
/ us-gaap_LossContingenciesByNatureOfContingencyAxis
= bac_PaymentProtectionInsuranceMember
Merchant Servicing Joint Venture    
Operating Leases, Future Minimum Payments Due [Abstract]    
Equity method investment ownership percentage 49.00%us-gaap_EquityMethodInvestmentOwnershipPercentage
/ us-gaap_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis
= bac_MerchantServicingJointVentureMember
 
Merchant Processing Servicers, Sponsored Entities    
Operating Leases, Future Minimum Payments Due [Abstract]    
Transactions processed and settled by sponsored entities 647,100,000,000bac_MerchantServicesTransactionsProcessedAndSettledBySponsoredEntities
/ dei_LegalEntityAxis
= bac_MerchantProcessingServicersSponsoredEntitiesMember
623,700,000,000bac_MerchantServicesTransactionsProcessedAndSettledBySponsoredEntities
/ dei_LegalEntityAxis
= bac_MerchantProcessingServicersSponsoredEntitiesMember
Losses as result of cardholder disputed transactions 16,000,000bac_MerchantServicesLossesRecordedbySponsoredEntities
/ dei_LegalEntityAxis
= bac_MerchantProcessingServicersSponsoredEntitiesMember
15,000,000bac_MerchantServicesLossesRecordedbySponsoredEntities
/ dei_LegalEntityAxis
= bac_MerchantProcessingServicersSponsoredEntitiesMember
Merchant escrow deposits held as collateral 130,000,000bac_MerchantServicesEscrowDepositsHeldAsCollateralbySponsoredEntities
/ dei_LegalEntityAxis
= bac_MerchantProcessingServicersSponsoredEntitiesMember
203,000,000bac_MerchantServicesEscrowDepositsHeldAsCollateralbySponsoredEntities
/ dei_LegalEntityAxis
= bac_MerchantProcessingServicersSponsoredEntitiesMember
Merchant Processing Servicers, Sponsored Entities | Merchant Services    
Operating Leases, Future Minimum Payments Due [Abstract]    
Maximum potential exposure $ 269,300,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_GuaranteeObligationsByNatureAxis
= bac_MerchantServicesMember
/ dei_LegalEntityAxis
= bac_MerchantProcessingServicersSponsoredEntitiesMember
$ 258,500,000,000us-gaap_GuaranteeObligationsMaximumExposure
/ us-gaap_GuaranteeObligationsByNatureAxis
= bac_MerchantServicesMember
/ dei_LegalEntityAxis
= bac_MerchantProcessingServicersSponsoredEntitiesMember