XML 26 R73.htm IDEA: XBRL DOCUMENT v2.4.1.9
Derivative Instruments Derivatives 1 - Notional and FV Position (Details) (USD $)
Mar. 31, 2015
Dec. 31, 2014
Asset Derivatives [Abstract]    
Notional amount $ 247,985,000,000us-gaap_DerivativeAssetNotionalAmount $ 183,204,000,000us-gaap_DerivativeAssetNotionalAmount
Derivative asset, estimated fair value 1,692,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives 1,485,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
Netting adjustment (5,626,000,000)us-gaap_DerivativeAssetFairValueGrossLiability (5,186,000,000)us-gaap_DerivativeAssetFairValueGrossLiability
Liability Derivatives [Abstract]    
Notional amount 395,719,000,000us-gaap_DerivativeLiabilityNotionalAmount 408,714,000,000us-gaap_DerivativeLiabilityNotionalAmount
Derivative liability, estimated fair value (802,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives (614,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
Netting adjustment 12,036,000,000us-gaap_DerivativeLiabilityFairValueGrossAsset 10,194,000,000us-gaap_DerivativeLiabilityFairValueGrossAsset
Table Footnote [Abstract]    
Cash collateral posted for derivative instruments 6,600,000,000fnm_CashCollateralPostedForDerivativeInstruments 5,300,000,000fnm_CashCollateralPostedForDerivativeInstruments
Cash collateral received for derivative instruments 161,000,000fnm_CashCollateralReceivedForDerivativeInstruments 245,000,000fnm_CashCollateralReceivedForDerivativeInstruments
Risk Management Derivatives [Member]    
Asset Derivatives [Abstract]    
Notional amount 169,716,000,000us-gaap_DerivativeAssetNotionalAmount
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
128,628,000,000us-gaap_DerivativeAssetNotionalAmount
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Derivative asset, estimated fair value 5,989,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
5,667,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Accrued interest receivable, estimated fair value 917,000,000fnm_DerivativeAssetsInterestReceivable
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
749,000,000fnm_DerivativeAssetsInterestReceivable
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Netting adjustment (5,626,000,000)us-gaap_DerivativeAssetFairValueGrossLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
(5,186,000,000)us-gaap_DerivativeAssetFairValueGrossLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Total net risk management derivatives 1,280,000,000us-gaap_DerivativeAssets
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
1,230,000,000us-gaap_DerivativeAssets
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Liability Derivatives [Abstract]    
Notional amount 295,920,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
344,264,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Derivative liability, estimated fair value (11,039,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
(9,451,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Accrued interest payable, estimated fair value (1,232,000,000)fnm_DerivativeLiabilityInterestPayable
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
(1,013,000,000)fnm_DerivativeLiabilityInterestPayable
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Netting adjustment 12,036,000,000us-gaap_DerivativeLiabilityFairValueGrossAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
10,194,000,000us-gaap_DerivativeLiabilityFairValueGrossAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Total net risk management derivatives (235,000,000)us-gaap_DerivativeLiabilities
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
(270,000,000)us-gaap_DerivativeLiabilities
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Risk Management Derivatives [Member] | Pay-fixed Swap [Member]    
Asset Derivatives [Abstract]    
Notional amount 17,739,000,000us-gaap_DerivativeAssetNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
41,965,000,000us-gaap_DerivativeAssetNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Derivative asset, estimated fair value 114,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
733,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Liability Derivatives [Abstract]    
Notional amount 144,469,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
123,557,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Derivative liability, estimated fair value (9,424,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
(7,125,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Risk Management Derivatives [Member] | Receive-fixed Swap [Member]    
Asset Derivatives [Abstract]    
Notional amount 141,195,000,000us-gaap_DerivativeAssetNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
67,629,000,000us-gaap_DerivativeAssetNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Derivative asset, estimated fair value 5,508,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
4,486,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Liability Derivatives [Abstract]    
Notional amount 97,104,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
157,272,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Derivative liability, estimated fair value (516,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
(1,302,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Risk Management Derivatives [Member] | Basis Swap [Member]    
Asset Derivatives [Abstract]    
Notional amount 1,769,000,000us-gaap_DerivativeAssetNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_BasisSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
5,769,000,000us-gaap_DerivativeAssetNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_BasisSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Derivative asset, estimated fair value 156,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= us-gaap_BasisSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
123,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= us-gaap_BasisSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Liability Derivatives [Abstract]    
Notional amount 9,100,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_BasisSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
7,100,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_BasisSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Derivative liability, estimated fair value (3,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= us-gaap_BasisSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
(2,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= us-gaap_BasisSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Risk Management Derivatives [Member] | Foreign Currency Swap [Member]    
Asset Derivatives [Abstract]    
Notional amount 328,000,000us-gaap_DerivativeAssetNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_CurrencySwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
344,000,000us-gaap_DerivativeAssetNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_CurrencySwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Derivative asset, estimated fair value 132,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= us-gaap_CurrencySwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
144,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= us-gaap_CurrencySwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Liability Derivatives [Abstract]    
Notional amount 260,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_CurrencySwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
273,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_CurrencySwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Derivative liability, estimated fair value (48,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= us-gaap_CurrencySwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
(30,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= us-gaap_CurrencySwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Risk Management Derivatives [Member] | Pay-fixed Swaption [Member]    
Asset Derivatives [Abstract]    
Notional amount 7,625,000,000us-gaap_DerivativeAssetNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwaptionMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
11,100,000,000us-gaap_DerivativeAssetNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwaptionMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Derivative asset, estimated fair value 52,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwaptionMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
57,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwaptionMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Liability Derivatives [Abstract]    
Notional amount 21,700,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwaptionMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
26,525,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwaptionMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Derivative liability, estimated fair value (79,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwaptionMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
(175,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwaptionMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Risk Management Derivatives [Member] | Receive-fixed Swaption [Member]    
Asset Derivatives [Abstract]    
Notional amount 0us-gaap_DerivativeAssetNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwaptionMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
750,000,000us-gaap_DerivativeAssetNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwaptionMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Derivative asset, estimated fair value 0fnm_DerivativeFairValueGrossAssetAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwaptionMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
96,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwaptionMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Liability Derivatives [Abstract]    
Notional amount 23,275,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwaptionMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
29,525,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwaptionMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Derivative liability, estimated fair value (968,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwaptionMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
(816,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwaptionMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Risk Management Derivatives [Member] | Other [Member]    
Asset Derivatives [Abstract]    
Notional amount 1,060,000,000us-gaap_DerivativeAssetNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_OtherContractMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
1,071,000,000us-gaap_DerivativeAssetNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_OtherContractMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Derivative asset, estimated fair value 27,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= us-gaap_OtherContractMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
28,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= us-gaap_OtherContractMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Liability Derivatives [Abstract]    
Notional amount 12,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_OtherContractMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
12,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_OtherContractMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Derivative liability, estimated fair value (1,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= us-gaap_OtherContractMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
(1,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ us-gaap_DerivativeByNatureAxis
= us-gaap_OtherContractMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Mortgage commitment derivatives [Member]    
Asset Derivatives [Abstract]    
Notional amount 78,269,000,000us-gaap_DerivativeAssetNotionalAmount
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
54,576,000,000us-gaap_DerivativeAssetNotionalAmount
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
Derivative asset, estimated fair value 412,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
255,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
Netting adjustment 0us-gaap_DerivativeAssetFairValueGrossLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
0us-gaap_DerivativeAssetFairValueGrossLiability
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
Liability Derivatives [Abstract]    
Notional amount 99,799,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
64,450,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
Derivative liability, estimated fair value (567,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
(344,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
Netting adjustment 0us-gaap_DerivativeLiabilityFairValueGrossAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
0us-gaap_DerivativeLiabilityFairValueGrossAsset
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
Mortgage commitment derivatives [Member] | Mortgage Commitments to Purchase Whole Loans [Member]    
Asset Derivatives [Abstract]    
Notional amount 10,387,000,000us-gaap_DerivativeAssetNotionalAmount
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_MortgageCommitmentsToPurchaseWholeLoansMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
6,157,000,000us-gaap_DerivativeAssetNotionalAmount
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_MortgageCommitmentsToPurchaseWholeLoansMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
Derivative asset, estimated fair value 51,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_MortgageCommitmentsToPurchaseWholeLoansMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
28,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_MortgageCommitmentsToPurchaseWholeLoansMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
Liability Derivatives [Abstract]    
Notional amount 1,493,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_MortgageCommitmentsToPurchaseWholeLoansMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
428,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_MortgageCommitmentsToPurchaseWholeLoansMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
Derivative liability, estimated fair value (4,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_MortgageCommitmentsToPurchaseWholeLoansMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
0fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_MortgageCommitmentsToPurchaseWholeLoansMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
Mortgage commitment derivatives [Member] | Forward Contracts to Purchase Mortgage-related Securities [Member]    
Asset Derivatives [Abstract]    
Notional amount 59,334,000,000us-gaap_DerivativeAssetNotionalAmount
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_ForwardContractsToPurchaseMortgageRelatedSecuritiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
43,533,000,000us-gaap_DerivativeAssetNotionalAmount
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_ForwardContractsToPurchaseMortgageRelatedSecuritiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
Derivative asset, estimated fair value 341,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_ForwardContractsToPurchaseMortgageRelatedSecuritiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
223,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_ForwardContractsToPurchaseMortgageRelatedSecuritiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
Liability Derivatives [Abstract]    
Notional amount 6,748,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_ForwardContractsToPurchaseMortgageRelatedSecuritiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
6,112,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_ForwardContractsToPurchaseMortgageRelatedSecuritiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
Derivative liability, estimated fair value (14,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_ForwardContractsToPurchaseMortgageRelatedSecuritiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
(8,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_ForwardContractsToPurchaseMortgageRelatedSecuritiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
Mortgage commitment derivatives [Member] | Forward Contracts to Sell Mortgage-related Securities [Member]    
Asset Derivatives [Abstract]    
Notional amount 8,548,000,000us-gaap_DerivativeAssetNotionalAmount
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_ForwardContractsToSellMortgageRelatedSecuritiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
4,886,000,000us-gaap_DerivativeAssetNotionalAmount
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_ForwardContractsToSellMortgageRelatedSecuritiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
Derivative asset, estimated fair value 20,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_ForwardContractsToSellMortgageRelatedSecuritiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
4,000,000fnm_DerivativeFairValueGrossAssetAllDerivatives
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_ForwardContractsToSellMortgageRelatedSecuritiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
Liability Derivatives [Abstract]    
Notional amount 91,558,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_ForwardContractsToSellMortgageRelatedSecuritiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
57,910,000,000us-gaap_DerivativeLiabilityNotionalAmount
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_ForwardContractsToSellMortgageRelatedSecuritiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
Derivative liability, estimated fair value $ (549,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_ForwardContractsToSellMortgageRelatedSecuritiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
$ (336,000,000)fnm_DerivativeLiabilityFairValueGrossLiabilityAllDerivatives
/ fnm_DerivativeInstrumentByPurposeAxis
= fnm_ForwardContractsToSellMortgageRelatedSecuritiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember