Typeform logo
Salesforce logo

Fix Typeform → Salesforce Sync Issues (Not Working, Errors, Duplicates)

🔧 2 Common Issues

Diagnose and resolve common sync problems. We've documented the 2 most common issues, their root causes, and exactly how to fix them. See step-by-step fixes for duplicates, missing fields, rate limit errors, and connection issues.

critical High Frequency

User submits form, Typeform says 'Success', but no Lead appears in Salesforce.

Also searched as: "Typeform Salesforce user submits form, typeform says 'success', but no lead appears in salesforce."

#1 Validation Rule Blocking 90% likely

📋 How to Diagnose

  1. 1. Typeform API does not display Salesforce validation errors to the end user.
  2. 2. Check Salesforce > Setup > Validation Rules on the Lead Object (e.g., 'State must be 2 letters').
  3. 3. If the form sends 'California' but SF requires 'CA', the sync fails silently.

Solution

Modify the Typeform question to use a Dropdown with 'CA' as the underlying value, or relax the Validation Rule for the Integration User.

⏱️ Est. time: 20 min

high Very High Frequency

Integration Error: 'bad value for restricted picklist field'

Also searched as: "Typeform Salesforce integration error: 'bad value for restricted picklist field'"

#1 Case Sensitivity/Whitespace 95% likely

📋 How to Diagnose

  1. 1. Salesforce Picklists are strict.
  2. 2. Typeform option: 'Consulting ' (trailing space) vs Salesforce: 'Consulting'.
  3. 3. Typeform: 'Email Marketing' vs Salesforce: 'Marketing - Email'.

Solution

Copy Salesforce API Names exactly into the Typeform Multiple Choice options, or use a middleware (Make) to map/transform the values before sending.

⏱️ Est. time: 15 min

Ready to automate? We have a template for you.

Copy this Typeform → Salesforce blueprint, open Make.com, paste it into the canvas, and your workflow is ready to configure.

Make.com
typeform-salesforce-blueprint.json
{
  "name": "Typeform → Salesforce Sync",
  "flow": [
    {
      "id": 1,
      "module": "typeform:WatchResponses",
      "version": 1,
      "parameters": {},
      "mapper": {},
      "metadata": {
        "designer": {
          "x": 0,
          "y": 0
        },
        "restore": {},
        "expect": [
          {
            "name": "body",
            "type": "text",
            "label": "Body"
          }
        ]
      }
    },
    {
      "id": 2,
      "module": "salesforce:CreateRecord",
      "version": 1,
      "parameters": {},
      "mapper": {},
      "metadata": {
        "designer": {
          "x": 300,
          "y": 0
        }
      }
    }
  ],
  "metadata": {
    "instant": false,
    "version": 1,
    "scenario": {
      "roundtrips": 1,
      "maxErrors": 3,
      "autoCommit": true,
      "sequential": false
    }
  }
}

Step 1: Try the Official Integration

Direct connection

Start with the native integration if available. It's usually the most reliable, but may have limitations.

View Setup Guide

Free with your subscription

Step 2: Use Make for Custom Flows

No code automation

Create custom integration workflows with Make's visual designer. It works with almost any API.

Try Make Free ->

1000 ops/mo free. No credit card.

Step 3: Self-Hosted with n8n

Full data control

Need complete data privacy? n8n is open-source and self-hostable. Build custom integrations with full control over your data.

Try n8n Free ->

Open source. Self-host or cloud. Unlimited ops.

Step 4: Add Human Review

Approval automation

Relay adds human-in-the-loop approvals, Slack/Teams alerts, and conditional logic to your automation.

Try Relay Free ->

1000 actions/mo free. No credit card.