I do not see where you are checking for record type is your trigger so going to add that in the answer. As per others commented you need to set the whatID for the Owner.
Another issue you need to account for is assignment rules. If the owner changes then you may want to reassign the tasks to the new lead owner. You would query for the tasks related to the leads where the owner is changing and update the task owner appropriatly
trigger CreateTaskOnLead on Lead (after insert) {
Map<ID,schema.RecordTypeInfo> lead_RT = lead.sObjectType.getDescribe().getRecordTypeInfosByID();
List<Task> lTask = new List<Task>();
if(Trigger.isAfter && trigger.isInsert) {
for(Lead l: Trigger.new) {
if(l.LeadSource == 'Property'){
if(lead_rt.get(l.RecordTypeID).getName() != 'Registration') continue;
task t = new Task(
whatID = l.id,
Subject = 'Property',
Priority = 'Normal',
Status = 'Not Started',
Type = 'Action',
ownerID - l.ownerID
);
lTask.add(t);
}
}
insert t;
}
}
Best Answer
To relate a task to a lead you have to use the WhoId (more info here: https://developer.salesforce.com/docs/atlas.en-us.api.meta/api/sforce_api_erd_activities.htm ).
In the process builder you have to map the field "Name ID" not the "Related To ID".