`layoutType="FULL"` will fetch the default layout assigned to that user. From [LDS Docs](https://developer.salesforce.com/docs/atlas.en-us.lightning.meta/lightning/data_service_load_record.htm), when you specify fields (included/excluded from default page layout), they are also loaded. The issue (I would rather say the bug in [documentation](https://developer.salesforce.com/docs/component-library/bundle/force:recordData/documentation)): 1. `fields` attribute will not trigger the reload of record. So, it is better to use conditional rendering. Reason: When record is initially loaded, the fields is not yet set by `doInit` method and when the `fields` are set, the `recordData` will not reload the record. Ofcourse you can use `reloadRecord()` but its not required as you need extra fields. So, if you use conditional rendering (When fields!=null), the `recordData` will load ONLY after the `fields` are set . 2. Although documentation shows `fields` attribute as `String`, it is actually a `List` . Below is the sample working code with respect to above points: COMPONENT: <aura:attribute name="recordFields" type="List" default="[]" /> <aura:attribute name="accountRecord" type="Object"/> <aura:attribute name="recordLoadError" type="String"/> <aura:handler name="init" value="{! this }" action="{! c.init }"/> <div class="slds-theme_default slds-box"> <aura:if isTrue="{!not(empty(v.recordFields))}"> <force:recordData aura:id="recordLoader" recordId="00128000009j45uAAA" layoutType="FULL" fields="{!v.recordFields}" targetFields="{!v.accountRecord}" targetError="{!v.recordLoadError}" /> Name - {!v.accountRecord.Name}, Active - {!v.accountRecord.Active__c} </aura:if> </div> CONTROLLER JS: init : function(component, event, helper){ component.set("v.recordFields",['Name','Type','Phone','Active__c','Description']); }, Note that `List` has to be set on fields.