Task
A Task in Salesforce is a to-do record: something somebody needs to do for a customer by a specific date.
Definition
A Task in Salesforce is a to-do record: something somebody needs to do for a customer by a specific date. Tasks carry a Subject, an ActivityDate (the due date), a Status (Open, In Progress, Completed, Waiting on someone else, Deferred, by default), a Priority (High, Normal, Low), an OwnerId, and the polymorphic WhoId and WhatId fields that tie the Task to a Lead or Contact and to an Account, Opportunity, Case, or custom object. Tasks are the unit of measurement for sales-rep activity in most Salesforce orgs: a "ten outbound calls per day" target rolls up into ten Task records per rep per day, each one with Type = Call.
Task is one half of the Activity abstraction in Salesforce, with Event being the other half. Tasks are async (no fixed time, just a due date); Events are sync (a start time, an end time, optional location and attendees). Both share the same WhoId and WhatId polymorphic lookups and surface together on the Activity Timeline of any related record. Tasks dominate sales rep workflow because most outbound work (calls, emails, follow-ups, contract reviews) is async; Events show up more in service motion (onsite installs, training sessions, customer-success reviews). Most of the Activity reporting in a sales org is Task reporting; Events fill in the gaps.
How Tasks power sales-rep activity tracking in Salesforce
Status and IsClosed
Task Status drives the count of "what is open" in every sales report. The default values (Not Started, In Progress, Completed, Waiting on someone else, Deferred) cover the basic lifecycle. Most orgs add custom statuses to match their motion (Scheduled, Attempted Contact, Connected, No Show), and each new status feeds the IsClosed system field. IsClosed is what reports actually filter on: an Open Tasks dashboard filters IsClosed = false; a Completed Tasks dashboard filters IsClosed = true. The mapping between Status and IsClosed is configured per status value in Setup, and the default mapping covers most cases. Custom statuses need their IsClosed mapping set explicitly or they default to Open in ways that break reports.
Logged Calls
Logged Calls are Tasks with Type set to Call. The platform models a logged call as a regular Task record with Type = Call, plus a few additional fields (CallType for Inbound or Outbound, CallDurationInSeconds, CallDisposition for the outcome of the call, CallObject for telephony integration). This means every call-tracking report runs against the Task object filtered to Type = Call, and call-volume reports work alongside email-volume reports through the same data model. Most telephony integrations (Salesforce Voice, NICE inContact, Five9, Genesys) write directly to Task with CallType and CallDurationInSeconds populated, so the rep's call activity shows up in reports without any manual logging.
Recurring Tasks
Recurring Tasks are the feature Salesforce admins ask about most and end up disappointed by. The standard Recurrence flag on Task creates a master Task that spawns child Tasks on a defined cadence (Daily, Weekly, Monthly, Yearly), but the recurrence model is limited compared to calendar apps: no end date by occurrence count, limited custom intervals, no rule like "every second Tuesday." Most enterprise orgs that need complex recurring Tasks build a Flow that schedules new Tasks on a defined interval, using the parent Task as a template. This pattern is more work to set up but handles the cadence variations real sales motions need.
Task triggers
Task triggers are common in production Salesforce orgs and a source of recurring performance complaints. A trigger on Task fires on every Task insert and update, which means it fires on the hundreds of Tasks reps create daily, the email logging that Lightning email triggers, and the Tasks that integrations push in from telephony or other source systems. Bulkified triggers can handle this volume; non-bulkified triggers hit governor limits regularly. The most common mistake in custom Task triggers is forgetting that the trigger also fires on every Status update, not just on creation. A trigger that fires "when a Task is marked Completed" needs to compare Trigger.old.Status to Trigger.new.Status; without that check, the logic runs on every Task update including unrelated edits to Subject or Description.
Queues for Tasks
Queues for Tasks let you assign work to a group rather than an individual. A Task assigned to a Queue (rather than to a specific User) sits in a shared bucket that any Queue member can pick up. Inside-sales and SDR teams use this pattern heavily: incoming Leads get a follow-up Task assigned to the SDR Queue, the first available rep takes it, and the assignment moves from Queue to that rep when they accept the work. Configure Queues in Setup > Queues, add members and supported objects, and route Tasks to the Queue through assignment rules, Flows, or Apex.
Task reporting
Task reporting is the highest-volume reporting category in any sales-heavy Salesforce org. The standard report types (Tasks and Events, Tasks and Events with Custom Objects) cover most use cases. Build custom report types if you need to join Task with EmailMessage for total-touches reports, or if you need to combine Task data with Activity Capture data. The Task object has limited summarizable fields (CallDurationInSeconds, custom number fields), so most rep-productivity dashboards count Tasks rather than aggregate values on them. Bucket fields on Subject or Type are useful for grouping ad-hoc, but reps with non-standard Subject conventions will skew the buckets.
Field history tracking
Field history tracking on Task is off by default. Most orgs assume it is on and discover the gap when they audit who reassigned an important Task three weeks ago and the audit trail does not exist. Field history tracking adds data storage cost (one row per tracked field change), but for Tasks the volume is typically manageable because most tracked fields (Status, OwnerId) change infrequently. Turn on field history tracking explicitly if compliance, sales coaching, or post-mortem analysis matters to your team.
How to create a Task
Creating a Task is the most-done action in Salesforce sales motion. Reps create dozens of Tasks per day, mostly through the Lightning composer on a related record or through email-integration plugins.
- Open the record the Task belongs to
Most Tasks are easier to create from the related record (Contact, Account, Opportunity, Case) than from the global Tasks tab, because starting from the related record auto-populates WhoId or WhatId.
- Click New Task on the Activity composer
The composer sits at the top of any record page. The Task tab is one of several (Task, Event, Log a Call, Email); pick Task for an async to-do.
- Set the Subject
Write the Subject as a summary, not as an email greeting. "Follow up on pricing question from May 12" reads better than "Follow up" or "Call back."
- Set the Due Date and Reminder
ActivityDate is the due date. The Reminder field schedules a notification at a chosen time before the due date, so the Task does not get forgotten.
- Set Priority and Status
Priority defaults to Normal; bump to High only when the Task genuinely needs faster attention. Status defaults to Not Started.
- Confirm WhoId and WhatId
Both fields auto-populate from the source record. Verify they are correct, especially when logging a Task that touched multiple records at the same Account.
- Save
Click Save. The Task attaches to the parent records and shows up in their Activity Timeline.
Required. The summary that shows up in every Task list view and report.
Required. The due date that drives Open vs Overdue calculations.
- Task triggers fire on every Status update, not just on creation. Bulkify triggers and compare Trigger.old to Trigger.new on Status before running status-change logic.
- Recurring Tasks have a limited recurrence model compared to calendar apps. Build a Flow if you need complex cadences (every second Tuesday, end after N occurrences).
- Custom Task statuses need their IsClosed mapping set explicitly. Without the mapping, reports filtering on IsClosed treat custom statuses as Open by default.
- Field history tracking is off by default on Task. Turn it on explicitly if you need to audit OwnerId reassignments or Status transitions over time.
Trust & references
Straight from the source - Salesforce's reference material on Task.
- Task (Object Reference)Salesforce Developers
About the Author
Dipojjal Chakrabarti is a B2C Solution Architect with 29 Salesforce certifications and over 13 years in the Salesforce ecosystem. He runs salesforcedictionary.com to help admins, developers, architects, and cert/interview candidates sharpen their fundamentals. More about Dipojjal.
Discussion
Loading discussion…