BlogSalesforce calling

How to log calls in Salesforce automatically

Salesforce stores every call as a Task. How Log a Call works, how a softphone or dialer logs calls for you, which call fields to fill, and how to report.

By the DialSavvy team7 min read

Fig. 1 · DialSavvy Phone in Salesforce · Illustrative · fictional data
On this page

To log calls in Salesforce automatically, use a softphone or dialer that writes each call to Salesforce as a completed Task with the call fields filled in. The rep calls from the record, picks an outcome when the call ends, and the Task appears on the activity timeline with the result, the duration, and the notes. No one types the call in twice.

How Salesforce stores a call

In Salesforce, a logged call is a Task. The Task object reference describes a Task as a business activity, such as a phone call or another to-do, and Tasks and Events together are what Salesforce calls activities. Task Subtype can mark a Task as a Call. It is set when the Task is created and cannot be changed afterwards.

Three fields decide where a call shows up:

  • Name (API name WhoId): the Contact or Lead you spoke to.
  • Related To (WhatId): a record such as an Account, Opportunity, Campaign, or Case.
  • Assigned To (OwnerId): the user who owns the Task, normally the rep who made the call.

Salesforce fills in the Task’s Account from those links: from the Related To record when it is an Account, an Opportunity, a Contract, or a custom object that is a child of Account, otherwise from the Account of the Contact in Name. A call logged only against a Lead has no Account. A call that has happened is saved with the Status Completed, and the notes go in Comments (Description in the API).

The standard call fields

Tasks also have four fields made for calls. The labels below come from the Salesforce Field Reference Guide, and the descriptions from the object reference.

Field label API name What it holds
Call Type CallType Inbound, Internal, or Outbound
Call Duration CallDurationInSeconds The length of the call in seconds, as a whole number
Call Result CallDisposition The outcome of the call, such as “we’ll call back”, as text of up to 255 characters
Call Object Identifier CallObject Described by Salesforce as the name of a call center, as text of up to 255 characters

Salesforce documents these fields as part of Salesforce CRM Call Center: any user in an org with Call Center can use them, and they are not subject to field-level security.

Two details matter later, when you report. Call Result is a text field, not a picklist, so it only groups cleanly if every call uses the same fixed set of outcomes. Call Object Identifier is also free text, so ask your phone vendor what it writes there. It is a natural place to match a Task back to the call in the phone system.

Logging calls manually with Log a Call

Log a Call is the standard action for typing a call in by hand. Salesforce Help says it creates a completed Task on the record. In Lightning Experience it appears in the Activities component on most objects (on Cases and Work Orders it is in the Chatter publisher), and the call shows under past activity as soon as it is saved. An admin adds the action to page layouts and picks its fields under Object Manager › your object › Buttons, Links, and Actions › Log a Call › Edit Layout.

Manual logging works for a few calls a day. It breaks down when reps make many calls in a row: the duration is guessed or left blank, the same outcome is written in different words, and some calls are never logged on busy days. Automatic logging closes that gap.

Logging calls automatically: a CTI softphone or a utility-bar app

Automatic logging means the phone system creates the Task for the rep. There are two common ways to put a phone inside Salesforce.

An Open CTI softphone. Open CTI is Salesforce’s browser-based JavaScript API for connecting a third-party phone system to Salesforce Call Center. Reps call from a softphone inside Salesforce without installing adapters on their computers. The softphone can create or update Salesforce records, such as the call Task, with the saveLog() method.

As of October 2026, Salesforce says Open CTI is in maintenance mode, gets no new features, and is scheduled for retirement in February 2028. It is already unavailable for newly created Agentforce Service orgs, and Salesforce recommends Salesforce Voice for new development. If you are choosing an Open CTI softphone now, ask the vendor what changes for you after February 2028.

A utility-bar app. The utility bar is a fixed footer in a Lightning app that opens tools in docked panels. An admin adds Lightning components to it as utilities in Setup › App Manager › Utility Items. A dialer can run there, follow the record the rep has open, and create and update Tasks through the standard Salesforce API.

Log a Call Open CTI softphone Utility-bar app
Who creates the Task The rep, by hand The softphone, through Open CTI The app, through the Salesforce API
Duration and outcome Typed in, or left blank Filled in from the call Filled in from the call
Set-up Add the action to page layouts Salesforce Call Center and the vendor’s softphone Add the app’s component to the utility bar
Watch for Missing and inconsistent logs The February 2028 retirement date How it handles errors, duplicates, and record access

What to require from a dialer’s call logging

Whichever way you go, check the Task the dialer writes against this list before you roll it out to the team.

  1. A clear rule for attempts. Decide whether every attempt becomes a Task, or only calls someone answered. One Task per attempt puts dial counts in Salesforce; logging only conversations keeps the activity timeline readable. Build your reports on the rule you pick.
  2. The outcome in Call Result, from one fixed list your team agrees on, such as Connected, Left voicemail, No answer, Wrong number, and Meeting booked.
  3. Duration and direction: Call Duration in seconds and Call Type set to Outbound.
  4. A link to the recording or the call, not the audio file itself, so access to recordings stays with the phone system. If you record calls, check the recording rules for each place you call.
  5. The right owner. Assigned To should be the rep who made the call, not a shared integration user, or every per-rep activity report shows one name.
  6. The right records. Name set to the Contact or Lead, and Related To set to the Account or Opportunity, so the call appears on each timeline that needs it.
  7. Written on time, and once. The Task should be written when the rep picks an outcome, retried if Salesforce does not respond, and matched on the phone system’s call ID so a retry updates the Task instead of creating a second one.
  8. Your access rules respected. Reps should only call and log against records they can already open in Salesforce.

How to report on calls in Salesforce

Once calls are Tasks, standard activity reports work on them.

  1. Pick the report type. The Tasks and Events report type returns activities across objects such as Accounts, Contacts, Leads, Campaigns, and Opportunities. Salesforce notes that it can time out because it queries several objects, and that a single-object type such as Activities with Leads runs faster. For custom fields on the object, create a custom report type with Activities as the secondary object.
  2. Filter to calls in the period you care about, for example last week’s completed Tasks with Call Type Outbound.
  3. Group by Assigned To and Call Result, and total Call Duration. The object reference marks all four call fields as fields you can filter, group, and sort on.
  4. Plan for archiving. Salesforce archives closed tasks due more than 365 days ago, and closed tasks with no due date created more than 365 days ago. Archived activities are not included in reports, though they stay in the activity timeline and in exported data. For year-over-year call trends, export the data on a schedule.

How DialSavvy handles this

DialSavvy for Salesforce is in early access. DialSavvy Phone sits in the Lightning utility bar and follows the record a rep has open. Reps click to call from the record, or dial selected list-view records, a report, or a campaign in a power or parallel session of the DialSavvy dialer, as each country’s rule pack allows. Each conversation is logged as a completed Task owned by the rep’s Salesforce user and linked to the Contact or Lead and its Account or Opportunity, with the outcome, the duration, the rep’s notes, and a link to the call in DialSavvy. The AI summary and next steps are added to the same Task when ready. Calls no one answered are not logged.

Start by pulling last week’s call Tasks into one report grouped by rep and outcome. If outcomes are blank or written in many different ways, fix the logging before you fix the report. To see calls logged as Tasks in your own Salesforce org, book a demo.

Sources

  1. Task, Object Reference for the Salesforce Platform, Salesforce Developers (developer.salesforce.com)
  2. Task, Salesforce Field Reference Guide, Salesforce Developers (developer.salesforce.com)
  3. Log a Call Button: Add, Customize, and Use It to Document Salesforce Communications, Salesforce Help (help.salesforce.com)
  4. Get Started with Open CTI, Salesforce Developers (developer.salesforce.com)
  5. saveLog() for Lightning Experience, Open CTI Developer Guide, Salesforce Developers (developer.salesforce.com)
  6. Add a Utility Bar to Lightning Apps, Salesforce Help (help.salesforce.com)
  7. Tasks and Events versus Activities with Objects Report Types, Salesforce Help (help.salesforce.com)
  8. Work with Archived Activities, Salesforce Help (help.salesforce.com)

Checked against these sources by the DialSavvy team. How we write. Spotted an error? Email hello@dialsavvy.com.

Questions

Anything else, ask in your demo.

Book a demo

Does Log a Call create a Task in Salesforce?

Yes. Log a Call creates a completed Task on the record, and in Lightning Experience the call shows under past activity as soon as it is saved. An admin chooses which fields the action shows in its layout.

Which Salesforce field holds the outcome of a call?

Call Result, whose API name is CallDisposition. It is a text field of up to 255 characters, so use one fixed list of outcomes across your team if you want reports to group cleanly.

Is Salesforce Open CTI being retired?

As of October 2026, Salesforce's Open CTI Developer Guide says Open CTI is in maintenance mode, gets no new features, and is scheduled for retirement in February 2028. Salesforce recommends Salesforce Voice for new development.

Why are older calls missing from my Salesforce reports?

Salesforce archives closed tasks due more than 365 days ago, and archived activities are not included in reports. They still appear in the record's activity timeline and in exported data.

Does DialSavvy log calls in Salesforce automatically?

Yes, in early access. Each conversation is logged as a completed Task owned by the rep's Salesforce user, with the outcome, the duration, the rep's notes, and a link to the call in DialSavvy. Calls no one answered are not logged.

Keep reading

Dial your Salesforce lists.

Early access is by invitation. We set up your workspace, numbers and caller ID, then send your invite.