I am looking for the easiest option to create a Lead using an email. Ideally I would send an email to a predefined email address, and it would automatically create a Lead in my Salesforce.com organisation.

8 Answers 8


One of the packaged apps mentioned in other answers may well be the easiest option, but it's pretty straightforward to create an Email Service in Apex. The sample code in the docs creates a Contact and a Task; here is code to create a Lead instead:

global class CreateLeadExample implements Messaging.InboundEmailHandler {
  global Messaging.InboundEmailResult handleInboundEmail(Messaging.inboundEmail email, 
                                                       Messaging.InboundEnvelope env){
    // Create an InboundEmailResult object for returning the result of the  
    // Apex Email Service 
    Messaging.InboundEmailResult result = new Messaging.InboundEmailResult();
    String myPlainText= '';

    // Add the email plain text into the local variable  
    myPlainText = email.plainTextBody;

    // Check for existing leads with this email address   
    Lead[] leads = [SELECT Id, Name, Email
      FROM Lead
      WHERE Email = :email.fromAddress];

    if (leads.size() == 0) {
      // New Lead object to be created - set LastName and Company to
      // dummy values for simplicity
      Lead newLead = new Lead(Email = email.fromAddress, 
        LastName = 'From Email', 
        Company = 'From Email');

      // Insert a new lead
      insert newLead;    

      System.debug('New Lead record: ' + newLead );   
    } else {
      System.debug('Incoming email duplicates existing Lead record(s): ' + leads );    

    // Set the result to true. No need to send an email back to the user      
    // with an error message   
    result.success = true;

    // Return the result for the Apex Email Service 
    return result;

There are some AppExchange apps that do this, or you can create an Email Service (under Develop, in Setup) to do the same.

There's VCS Smart Email, Email to Lead, and I think Marketo does it as well.

Honestly, though, if I were doing it, I would just create an Email Service.


There's an app on the AppExchange: http://appexchange.salesforce.com/listingDetail?listingId=a0N30000003HuI9EAK Or were you looking for help coding this?

  • 1
    I've used Email-to-anything and it takes a bit of getting used to to set it up, but once you have it working it does work quite well.
    – JodieM
    Commented Aug 4, 2012 at 3:51

Complementing Tom Gersic's answer, there are two versions of VCS Smart Email in the Appexchange. One for Enterprise and above editions, that he mentionned.

One for Group and Professional editions here.

Both are private.

Thank you for the editor of VCS Smart Email.


The app Email To Lead might be able to help you in this instance. You might also want to checkout the walkthrough of the setup with screenshots.


If you use Gmail, then you wanna check out Ecquire - http://appexchange.salesforce.com/listingDetail?listingId=a0N30000005vHq6EAE

Disclaimer: I work there.

If you're using Outlook, LinkPoint360 has one of the most comprehensive integrations for Salesforce - http://appexchange.salesforce.com/listingDetail?listingId=a0N30000001qTIuEAM


I felt the need to answer this after reviewing the other email to lead salesforce solutions and the functionality they provide.

We've had a few clients use some of the solutions provided here. They weren't able to isolate the exact data required to actually feed into Salesforce. We're able to do that fairly easily from an incoming email and also incoming email attachments.

Fields like "first name" or "last name" can be filled from any text in the body of the email by adding rules to extract what you need. Like this really:

enter image description here

Disclaimer: I work for Parserr but do feel its a superior solution purely based on our clients reviews of the other solutions listed here.


If you are looking for appexchange app for advanced email to lead conversion which does following

  1. Configure data elements for parsing using simple configuration page (instead of coding)
  2. Support multiple email templates/formats
  3. Set default values to lead fields (e.g. for record type, Lead source, Campaign)
  4. Attach lead to a campaign
  5. Process attachments
  6. Simulate parsing of text to Lead (Built in simulator)
  7. Extensive Error/Warning reporting

Then try Email2LeadPro

More details at: http://www.cloudgofer.com/email2lead/

Disclaimer: I work at Email2LeadPro.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .