XML 81 R90.htm IDEA: XBRL DOCUMENT v2.4.1.9
Fair Value Level 3 Valuation - Nonrecurring (Details) (USD $)
In Millions, unless otherwise specified
Mar. 31, 2015
Dec. 31, 2014
Significant Other Observable Inputs (Level 2) [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Mortgage loans held for sale, at lower of cost or fair value $ 153us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
$ 169us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
Mortgage loans held for investment, at fair value 2,675,585us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
2,687,759us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
Total assets at fair value 2,751,816us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
2,771,628us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
Significant Other Observable Inputs (Level 2) [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Mortgage loans held for sale, at lower of cost or fair value 7us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
93us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
Significant Unobservable Inputs (Level 3) [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Mortgage loans held for sale, at lower of cost or fair value 567us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
169us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Mortgage loans held for investment, at fair value 419,199us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
400,327us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Total assets at fair value 436,780us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
419,874us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
Significant Unobservable Inputs (Level 3) [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Total assets at fair value 18,765us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
22,416us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
Fannie Mae [Member] | Significant Other Observable Inputs (Level 2) [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Mortgage loans held for investment, at fair value 31,127us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
29,896us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
Fannie Mae [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Mortgage loans held for investment, at fair value 214,493us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
217,064us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
Consolidated Trusts [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Mortgage loans held for investment, at fair value 15,570us-gaap_LoansReceivableFairValueDisclosure
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
15,629us-gaap_LoansReceivableFairValueDisclosure
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
Consolidated Trusts [Member] | Significant Other Observable Inputs (Level 2) [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Mortgage loans held for investment, at fair value 2,644,458us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
2,657,863us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
Consolidated Trusts [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Mortgage loans held for investment, at fair value 204,706us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
183,263us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= us-gaap_VariableInterestEntityPrimaryBeneficiaryMember
Single-Family [Member] | Significant Unobservable Inputs (Level 3) [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Mortgage loans held for investment, at fair value 13,831us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
16,714us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Acquired property, net 4,006fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
4,782fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
Multifamily [Member] | Significant Unobservable Inputs (Level 3) [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Mortgage loans held for investment, at fair value 651us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
625us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
Acquired property, net 48fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
140fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
Proprietary Home Price Model and Appraisals [Member] | Significant Unobservable Inputs (Level 3) [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Number of Acquired Properties Valuated, Percentage 71.00%fnm_NumberOfAcquiredPropertiesValuatedPercentage
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_ValuationTechniqueAxis
= fnm_ProprietaryHomePriceModelAndAppraisalsMember
77.00%fnm_NumberOfAcquiredPropertiesValuatedPercentage
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_ValuationTechniqueAxis
= fnm_ProprietaryHomePriceModelAndAppraisalsMember
Consensus without Inputs [Member] | Significant Unobservable Inputs (Level 3) [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Mortgage loans held for sale, at lower of cost or fair value 202us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_ValuationTechniqueAxis
= fnm_ConsensusWithoutInputsMember
110us-gaap_MortgagesHeldForSaleFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_ValuationTechniqueAxis
= fnm_ConsensusWithoutInputsMember
Consensus without Inputs [Member] | Single-Family [Member] | Fannie Mae [Member] | Significant Unobservable Inputs (Level 3) [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Mortgage loans held for investment, at fair value 271us-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_ConsensusWithoutInputsMember
0us-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_ConsensusWithoutInputsMember
Internal Model [Member] | Single-Family [Member] | Significant Unobservable Inputs (Level 3) [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Acquired property, net 967fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_InternalModelMember
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
Internal Model [Member] | Single-Family [Member] | Fannie Mae [Member] | Significant Unobservable Inputs (Level 3) [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Mortgage loans held for investment, at fair value 13,540us-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
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
Appraisals [Member] | Single-Family [Member] | Significant Unobservable Inputs (Level 3) [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Acquired property, net 1,194fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_AppraisalsMember
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
Walk Forwards [Member] | Single-Family [Member] | Significant Unobservable Inputs (Level 3) [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Acquired property, net 800fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_WalkForwardsMember
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
Other Valuation Technique [Member] | Significant Unobservable Inputs (Level 3) [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Other assets 27us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_ValuationTechniqueAxis
= fnm_OtherValuationTechniqueMember
45us-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] | Significant Unobservable Inputs (Level 3) [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Acquired property, net 172fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_OtherValuationTechniqueMember
191fnm_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] | Significant Unobservable Inputs (Level 3) [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Mortgage loans held for investment, at fair value 20us-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
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
Other Valuation Technique [Member] | Multifamily [Member] | Significant Unobservable Inputs (Level 3) [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Mortgage loans held for investment, at fair value 11us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_OtherValuationTechniqueMember
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
Acquired property, net 0fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_OtherValuationTechniqueMember
13fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_OtherValuationTechniqueMember
Broker Price Opinions [Member] | Multifamily [Member] | Significant Unobservable Inputs (Level 3) [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Mortgage loans held for investment, at fair value 83us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_BrokerPriceOpinionsMember
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
Acquired property, net 35fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_BrokerPriceOpinionsMember
127fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_BrokerPriceOpinionsMember
Asset Manager Estimate [Member] | Multifamily [Member] | Significant Unobservable Inputs (Level 3) [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Mortgage loans held for investment, at fair value 557us-gaap_LoansReceivableFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_AssetManagerEstimateMember
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
Accepted Offers [Member] | Significant Unobservable Inputs (Level 3) [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Number of Acquired Properties Valuated, Percentage 25.00%fnm_NumberOfAcquiredPropertiesValuatedPercentage
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_ValuationTechniqueAxis
= fnm_AcceptedOffersMember
19.00%fnm_NumberOfAcquiredPropertiesValuatedPercentage
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_ValuationTechniqueAxis
= fnm_AcceptedOffersMember
Accepted Offers [Member] | Single-Family [Member] | Significant Unobservable Inputs (Level 3) [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
Acquired property, net 873fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_AcceptedOffersMember
864fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_SingleFamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_AcceptedOffersMember
Accepted Offers [Member] | Multifamily [Member] | Significant Unobservable Inputs (Level 3) [Member] | Fair Value, Measurements, Nonrecurring [Member]    
Fair Value Inputs, Quantitative Information [Line Items]    
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_AcceptedOffersMember
$ 0fnm_RealEstateAcquiredThroughForeclosureFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsNonrecurringMember
/ us-gaap_StatementBusinessSegmentsAxis
= fnm_MultifamilyMember
/ us-gaap_ValuationTechniqueAxis
= fnm_AcceptedOffersMember