XML 27 R89.htm IDEA: XBRL DOCUMENT v2.4.1.9
Fair Value Measurements, Measured On Recurring Basis Significant Unobservable Inputs (Details) (Fair Value, Inputs, Level 3 [Member], USD $)
12 Months Ended
Dec. 31, 2014
Dec. 31, 2013
Available for sale Securities [Member] | Municipal and other tax-exempt securities [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Balance at beginning of period $ 17,805,000us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
$ 40,702,000us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Transfers to Level 3 from Level 2 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Purchases and capital calls 0bokf_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchasesAndCapitalCalls
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
0bokf_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchasesAndCapitalCalls
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Redemptions and distributions (7,487,000)bokf_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetRedemptionsAndDistributions
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
(19,238,000)bokf_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetRedemptionsAndDistributions
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Proceeds from sales 0us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationSales
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
 
Other comprehensive gain (loss) 10,000us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
(3,506,000)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Balance at end of period 10,093,000us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
17,805,000us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Available for sale Securities [Member] | Municipal and other tax-exempt securities [Member] | Mortgage banking revenue [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_MortgagebankingrevenueMember
 
Available for sale Securities [Member] | Municipal and other tax-exempt securities [Member] | Gain (loss) on assets [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_GainlossonassetsMember
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_GainlossonassetsMember
Available for sale Securities [Member] | Municipal and other tax-exempt securities [Member] | Gain on available for sale securities, net [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings (235,000)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_GainonavailableforsalesecuritiesnetMember
1,216,000us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_GainonavailableforsalesecuritiesnetMember
Available for sale Securities [Member] | Municipal and other tax-exempt securities [Member] | Other-than-temporary impairment losses [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_OtherthantemporaryimpairmentlossesMember
(1,369,000)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_OtherthantemporaryimpairmentlossesMember
Available for sale Securities [Member] | Municipal and other tax-exempt securities [Member] | Charitable Contributions to BOKF Foundation [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_CharitableContributionstoBOKFFoundationMember
 
Available for sale Securities [Member] | Other debt securities [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Balance at beginning of period 4,712,000us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_OtherDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
5,399,000us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_OtherDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Transfers to Level 3 from Level 2 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_OtherDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_OtherDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Purchases and capital calls 0bokf_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchasesAndCapitalCalls
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_OtherDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
0bokf_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchasesAndCapitalCalls
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_OtherDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Redemptions and distributions (500,000)bokf_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetRedemptionsAndDistributions
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_OtherDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
(500,000)bokf_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetRedemptionsAndDistributions
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_OtherDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Proceeds from sales 0us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationSales
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_OtherDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
 
Other comprehensive gain (loss) (62,000)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_OtherDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
(187,000)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_OtherDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Balance at end of period 4,150,000us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_OtherDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
4,712,000us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_OtherDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Available for sale Securities [Member] | Other debt securities [Member] | Mortgage banking revenue [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_OtherDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_MortgagebankingrevenueMember
 
Available for sale Securities [Member] | Other debt securities [Member] | Gain (loss) on assets [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_OtherDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_GainlossonassetsMember
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_OtherDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_GainlossonassetsMember
Available for sale Securities [Member] | Other debt securities [Member] | Gain on available for sale securities, net [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_OtherDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_GainonavailableforsalesecuritiesnetMember
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_OtherDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_GainonavailableforsalesecuritiesnetMember
Available for sale Securities [Member] | Other debt securities [Member] | Other-than-temporary impairment losses [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_OtherDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_OtherthantemporaryimpairmentlossesMember
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_OtherDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_OtherthantemporaryimpairmentlossesMember
Available for sale Securities [Member] | Other debt securities [Member] | Charitable Contributions to BOKF Foundation [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_OtherDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_CharitableContributionstoBOKFFoundationMember
 
Available for sale Securities [Member] | Equity securities and mutual funds [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Balance at beginning of period 4,207,000us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= bokf_EquitySecuritiesAndMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
2,161,000us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= bokf_EquitySecuritiesAndMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Transfers to Level 3 from Level 2 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= bokf_EquitySecuritiesAndMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= bokf_EquitySecuritiesAndMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Purchases and capital calls 0bokf_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchasesAndCapitalCalls
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= bokf_EquitySecuritiesAndMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
0bokf_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchasesAndCapitalCalls
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= bokf_EquitySecuritiesAndMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Redemptions and distributions 0bokf_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetRedemptionsAndDistributions
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= bokf_EquitySecuritiesAndMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
0bokf_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetRedemptionsAndDistributions
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= bokf_EquitySecuritiesAndMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Proceeds from sales 0us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationSales
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= bokf_EquitySecuritiesAndMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
 
Other comprehensive gain (loss) (1,787,000)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= bokf_EquitySecuritiesAndMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
2,046,000us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= bokf_EquitySecuritiesAndMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Balance at end of period 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= bokf_EquitySecuritiesAndMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
4,207,000us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= bokf_EquitySecuritiesAndMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Available for sale Securities [Member] | Equity securities and mutual funds [Member] | Mortgage banking revenue [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= bokf_EquitySecuritiesAndMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_MortgagebankingrevenueMember
 
Available for sale Securities [Member] | Equity securities and mutual funds [Member] | Gain (loss) on assets [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= bokf_EquitySecuritiesAndMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_GainlossonassetsMember
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= bokf_EquitySecuritiesAndMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_GainlossonassetsMember
Available for sale Securities [Member] | Equity securities and mutual funds [Member] | Gain on available for sale securities, net [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= bokf_EquitySecuritiesAndMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_GainonavailableforsalesecuritiesnetMember
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= bokf_EquitySecuritiesAndMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_GainonavailableforsalesecuritiesnetMember
Available for sale Securities [Member] | Equity securities and mutual funds [Member] | Other-than-temporary impairment losses [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= bokf_EquitySecuritiesAndMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_OtherthantemporaryimpairmentlossesMember
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= bokf_EquitySecuritiesAndMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_OtherthantemporaryimpairmentlossesMember
Available for sale Securities [Member] | Equity securities and mutual funds [Member] | Charitable Contributions to BOKF Foundation [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings (2,420,000)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ bokf_FairValueByAssetSubClassAxis
= bokf_EquitySecuritiesAndMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_CharitableContributionstoBOKFFoundationMember
 
Residential Mortgage Loans Held for Sale [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Balance at beginning of period 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_FairValueByAssetClassAxis
= bokf_ResidentialMortgageLoansHeldforSaleMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_FairValueByAssetClassAxis
= bokf_ResidentialMortgageLoansHeldforSaleMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Transfers to Level 3 from Level 2 13,644,000us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3
/ us-gaap_FairValueByAssetClassAxis
= bokf_ResidentialMortgageLoansHeldforSaleMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3
/ us-gaap_FairValueByAssetClassAxis
= bokf_ResidentialMortgageLoansHeldforSaleMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Purchases and capital calls 0bokf_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchasesAndCapitalCalls
/ us-gaap_FairValueByAssetClassAxis
= bokf_ResidentialMortgageLoansHeldforSaleMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
0bokf_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchasesAndCapitalCalls
/ us-gaap_FairValueByAssetClassAxis
= bokf_ResidentialMortgageLoansHeldforSaleMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Redemptions and distributions 0bokf_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetRedemptionsAndDistributions
/ us-gaap_FairValueByAssetClassAxis
= bokf_ResidentialMortgageLoansHeldforSaleMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
0bokf_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetRedemptionsAndDistributions
/ us-gaap_FairValueByAssetClassAxis
= bokf_ResidentialMortgageLoansHeldforSaleMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Proceeds from sales (1,176,000)us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationSales
/ us-gaap_FairValueByAssetClassAxis
= bokf_ResidentialMortgageLoansHeldforSaleMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
 
Other comprehensive gain (loss) 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss
/ us-gaap_FairValueByAssetClassAxis
= bokf_ResidentialMortgageLoansHeldforSaleMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss
/ us-gaap_FairValueByAssetClassAxis
= bokf_ResidentialMortgageLoansHeldforSaleMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Balance at end of period 11,856,000us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_FairValueByAssetClassAxis
= bokf_ResidentialMortgageLoansHeldforSaleMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_FairValueByAssetClassAxis
= bokf_ResidentialMortgageLoansHeldforSaleMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Residential Mortgage Loans Held for Sale [Member] | Mortgage banking revenue [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings (612,000)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= bokf_ResidentialMortgageLoansHeldforSaleMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_MortgagebankingrevenueMember
 
Residential Mortgage Loans Held for Sale [Member] | Gain (loss) on assets [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= bokf_ResidentialMortgageLoansHeldforSaleMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_GainlossonassetsMember
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= bokf_ResidentialMortgageLoansHeldforSaleMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_GainlossonassetsMember
Residential Mortgage Loans Held for Sale [Member] | Gain on available for sale securities, net [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= bokf_ResidentialMortgageLoansHeldforSaleMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_GainonavailableforsalesecuritiesnetMember
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= bokf_ResidentialMortgageLoansHeldforSaleMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_GainonavailableforsalesecuritiesnetMember
Residential Mortgage Loans Held for Sale [Member] | Other-than-temporary impairment losses [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= bokf_ResidentialMortgageLoansHeldforSaleMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_OtherthantemporaryimpairmentlossesMember
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= bokf_ResidentialMortgageLoansHeldforSaleMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_OtherthantemporaryimpairmentlossesMember
Residential Mortgage Loans Held for Sale [Member] | Charitable Contributions to BOKF Foundation [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= bokf_ResidentialMortgageLoansHeldforSaleMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_CharitableContributionstoBOKFFoundationMember
 
Other Assets [Member] | Private equity funds [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Balance at beginning of period 27,341,000us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherAssetsMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_PrivateEquityFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
28,169,000us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherAssetsMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_PrivateEquityFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Transfers to Level 3 from Level 2 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherAssetsMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_PrivateEquityFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherAssetsMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_PrivateEquityFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Purchases and capital calls 1,012,000bokf_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchasesAndCapitalCalls
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherAssetsMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_PrivateEquityFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
1,415,000bokf_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchasesAndCapitalCalls
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherAssetsMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_PrivateEquityFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Redemptions and distributions (7,473,000)bokf_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetRedemptionsAndDistributions
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherAssetsMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_PrivateEquityFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
(5,294,000)bokf_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetRedemptionsAndDistributions
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherAssetsMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_PrivateEquityFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Proceeds from sales 0us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationSales
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherAssetsMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_PrivateEquityFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
 
Other comprehensive gain (loss) 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherAssetsMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_PrivateEquityFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherAssetsMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_PrivateEquityFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Balance at end of period 25,627,000us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherAssetsMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_PrivateEquityFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
27,341,000us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherAssetsMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_PrivateEquityFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Other Assets [Member] | Private equity funds [Member] | Mortgage banking revenue [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherAssetsMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_PrivateEquityFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_MortgagebankingrevenueMember
 
Other Assets [Member] | Private equity funds [Member] | Gain (loss) on assets [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings 4,747,000us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherAssetsMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_PrivateEquityFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_GainlossonassetsMember
3,051,000us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherAssetsMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_PrivateEquityFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_GainlossonassetsMember
Other Assets [Member] | Private equity funds [Member] | Gain on available for sale securities, net [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherAssetsMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_PrivateEquityFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_GainonavailableforsalesecuritiesnetMember
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherAssetsMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_PrivateEquityFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_GainonavailableforsalesecuritiesnetMember
Other Assets [Member] | Private equity funds [Member] | Other-than-temporary impairment losses [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherAssetsMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_PrivateEquityFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_OtherthantemporaryimpairmentlossesMember
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherAssetsMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_PrivateEquityFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_OtherthantemporaryimpairmentlossesMember
Other Assets [Member] | Private equity funds [Member] | Charitable Contributions to BOKF Foundation [Member]
   
Fair Value Assets Measured on Recurring Basis Unobservable Reconciliation [Roll Forward]    
Gain (loss) recognized in earnings $ 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherAssetsMember
/ bokf_FairValueByAssetSubClassAxis
= us-gaap_PrivateEquityFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_IncomeStatementLocationAxis
= bokf_CharitableContributionstoBOKFFoundationMember