XML 90 R123.htm IDEA: XBRL DOCUMENT v2.4.1.9
Fair Value Nonrecurring Changes (Details) (USD $)
In Millions, unless otherwise specified
Dec. 31, 2014
Dec. 31, 2013
Quoted Prices in Active Markets for Identical Assets (Level 1) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for sale, at lower of cost or fair value $ 0us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
$ 0us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
Mortgage loans held for investment 0us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
0us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
Total assets at fair value 57,431us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
52,939us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
Significant Other Observable Inputs (Level 2) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for sale, at lower of cost or fair value 169us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
185us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
Mortgage loans held for investment 2,687,759us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
2,599,667us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
Total assets at fair value 2,771,628us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
2,694,859us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
Significant Unobservable Inputs (Level 3) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for sale, at lower of cost or fair value 169us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
195us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Mortgage loans held for investment 400,327us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
392,355us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Total assets at fair value 419,874us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
415,630us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Fair Value, Measurements, Nonrecurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for sale, at lower of cost or fair value 0us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
0us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
Other assets 0us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
0us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
Total assets at fair value 0us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
0us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
Fair Value, Measurements, Nonrecurring [Member] | Significant Other Observable Inputs (Level 2) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for sale, at lower of cost or fair value 93us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
101us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
Other assets 0us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
0us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
Total assets at fair value 93us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
101us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
Fair Value, Measurements, Nonrecurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for sale, at lower of cost or fair value 110us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
132us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
Other assets 45us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
121us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
Total assets at fair value 22,416us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
25,970us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
Fannie Mae [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 0us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
0us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
Fannie Mae [Member] | Significant Other Observable Inputs (Level 2) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 29,896us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
29,920us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
Fannie Mae [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 217,064us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
215,960us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
Consolidated Trusts [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 15,629us-gaap_LoansReceivableFairValueDisclosure
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
14,268us-gaap_LoansReceivableFairValueDisclosure
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
Consolidated Trusts [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 0us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
0us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
Consolidated Trusts [Member] | Significant Other Observable Inputs (Level 2) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 2,657,863us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
2,569,747us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
Consolidated Trusts [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 183,263us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
176,395us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
Single-Family [Member] | Fair Value, Measurements, Nonrecurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Acquired property, net 0fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
0fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Single-Family [Member] | Fair Value, Measurements, Nonrecurring [Member] | Significant Other Observable Inputs (Level 2) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Acquired property, net 0fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
0fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Single-Family [Member] | Fair Value, Measurements, Nonrecurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 16,714us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
20,045us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Acquired property, net 4,782fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
4,041fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Single-Family [Member] | Fannie Mae [Member] | Fair Value, Measurements, Nonrecurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 0us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
0us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Single-Family [Member] | Fannie Mae [Member] | Fair Value, Measurements, Nonrecurring [Member] | Significant Other Observable Inputs (Level 2) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 0us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
0us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Single-Family [Member] | Fannie Mae [Member] | Fair Value, Measurements, Nonrecurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 16,654us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
19,966us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Single-Family [Member] | Consolidated Trusts [Member] | Fair Value, Measurements, Nonrecurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 0us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
0us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Single-Family [Member] | Consolidated Trusts [Member] | Fair Value, Measurements, Nonrecurring [Member] | Significant Other Observable Inputs (Level 2) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 0us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
0us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Single-Family [Member] | Consolidated Trusts [Member] | Fair Value, Measurements, Nonrecurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 60us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
79us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Multifamily [Member] | Fair Value, Measurements, Nonrecurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 0us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
0us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
Acquired property, net 0fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
0fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
Multifamily [Member] | Fair Value, Measurements, Nonrecurring [Member] | Significant Other Observable Inputs (Level 2) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 0us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
0us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
Acquired property, net 0fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
0fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
Multifamily [Member] | Fair Value, Measurements, Nonrecurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 625us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
1,533us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
Acquired property, net 140fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
98fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
Consensus Without Inputs [Member] | Fair Value, Measurements, Nonrecurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for sale, at lower of cost or fair value 110us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_ValuationTechniqueAxis
= fnm_ConsensusWithoutInputsMember
132us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_ValuationTechniqueAxis
= fnm_ConsensusWithoutInputsMember
Other Valuation Technique [Member] | Fair Value, Measurements, Nonrecurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Other assets 45us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_ValuationTechniqueAxis
= fnm_OtherValuationTechniqueMember
121us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_ValuationTechniqueAxis
= fnm_OtherValuationTechniqueMember
Other Valuation Technique [Member] | Single-Family [Member] | Fair Value, Measurements, Nonrecurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Acquired property, net 191fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_OtherValuationTechniqueMember
118fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_OtherValuationTechniqueMember
Other Valuation Technique [Member] | Single-Family [Member] | Consolidated Trusts [Member] | Fair Value, Measurements, Nonrecurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 60us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_OtherValuationTechniqueMember
79us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_OtherValuationTechniqueMember
Other Valuation Technique [Member] | Multifamily [Member] | Fair Value, Measurements, Nonrecurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 0us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_OtherValuationTechniqueMember
55us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_OtherValuationTechniqueMember
Acquired property, net 13fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_OtherValuationTechniqueMember
89fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_OtherValuationTechniqueMember
Accepted Offers [Member] | Single-Family [Member] | Fair Value, Measurements, Nonrecurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Acquired property, net 864fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_AcceptedOffersMember
691fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_AcceptedOffersMember
Internal Model [Member] | Single-Family [Member] | Fair Value, Measurements, Nonrecurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Acquired property, net 1,045fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_InternalModelMember
1,049fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_InternalModelMember
Internal Model [Member] | Single-Family [Member] | Fannie Mae [Member] | Fair Value, Measurements, Nonrecurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 16,654us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_InternalModelMember
19,966us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_InternalModelMember
Appraisals [Member] | Single-Family [Member] | Fair Value, Measurements, Nonrecurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Acquired property, net 1,509fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_AppraisalsMember
1,077fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_AppraisalsMember
Broker Price Opinions [Member] | Multifamily [Member] | Fair Value, Measurements, Nonrecurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 45us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_BrokerPriceOpinionsMember
248us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_BrokerPriceOpinionsMember
Acquired property, net 127fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_BrokerPriceOpinionsMember
9fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_BrokerPriceOpinionsMember
Walk Forwards [Member] | Single-Family [Member] | Fair Value, Measurements, Nonrecurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Acquired property, net 1,173fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_WalkForwardsMember
1,106fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_WalkForwardsMember
Asset Manager Estimate [Member] | Multifamily [Member] | Fair Value, Measurements, Nonrecurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 580us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_AssetManagerEstimateMember
1,230us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_AssetManagerEstimateMember
Estimated Fair Value [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for sale, at lower of cost or fair value 338us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
380us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
Mortgage loans held for investment 3,088,086us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
2,992,022us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
Total assets at fair value 3,243,747us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
3,155,006us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
Estimated Fair Value [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for sale, at lower of cost or fair value 203us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
233us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
Other assets 45us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
121us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
Total assets at fair value 22,509us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
26,071us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
Estimated Fair Value [Member] | Fannie Mae [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 246,960us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
245,880us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
Estimated Fair Value [Member] | Consolidated Trusts [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 2,841,126us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
2,746,142us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
Estimated Fair Value [Member] | Single-Family [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Acquired property, net 4,782fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
4,041fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Estimated Fair Value [Member] | Single-Family [Member] | Fannie Mae [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 16,654us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
19,966us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Estimated Fair Value [Member] | Single-Family [Member] | Consolidated Trusts [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 60us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
79us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Estimated Fair Value [Member] | Multifamily [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value, Assets Measured on Nonrecurring Basis [Line Items]    
Mortgage loans held for investment 625us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
1,533us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
Acquired property, net $ 140fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
$ 98fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByMeasurementBasisAxis
= us-gaap_EstimateOfFairValueFairValueDisclosureMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember