> ## Documentation Index
> Fetch the complete documentation index at: https://docs.thinkrr.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# GHL Variable Error: [object Object] in thinkrr Calls

> **How to resolve '[object Object]' errors caused by unsupported or misformatted GHL dynamic variables in thinkrr Voice AI.**

## Overview

If you're seeing `[object Object]` in your thinkrr Voice AI calls—especially where a variable like a name or phone number should be—you're running into a formatting conflict between thinkrr and GoHighLevel (GHL).

This error most often appears when thinkrr is expecting a plain text string but receives a complex data object instead. It usually stems from:

* Incorrect formatting of dynamic variables (particularly for thinkrr-specific placeholders)
* Missing data in the contact record that GHL tries to send into thinkrr
* Legacy templates using outdated variable syntax

## What's Actually Happening

There is a two-way sync between GHL and thinkrr:

* Thinkrr sends data to GHL (scripts, prompts, transcripts)
* GHL sends data to thinkrr (contact variables, inputs, call info)

When one side sends improperly formatted data—or empty/incomplete contact values—the system can't interpret the input and defaults to showing `[object Object]`.

### Common Triggers for this Issue

* Using **thinkrr variables** inside GHL with **double or triple curly brackets** like `{client_firstname}` or `{meeting_location}`.
  * These formats are not supported.
  * **Thinkrr variables must use single curly braces only**, like `{client_firstname}`.
* Using native **GHL variables** (like `{{contact.first_name}}`) when the associated contact **has no value assigned** to that field.
  * If the value is empty, GHL sends an undefined object, which thinkrr reads as `[object Object]`.

### Legacy Templates

Older thinkrr scenario templates included double/triple curly brace formatting for variables. While new templates use the correct single-curly format, older users may still have these legacy inputs.

If your workflows or outbound/inbound scenarios were set up before the fix, this is likely the cause.

## Fixing the Error

### If You're Using thinkrr-Specific Variables (like `{client_firstname}`)

* Open your GHL workflow or action block.
* Find the thinkrr variable you're passing in (usually part of a script, prompt, or custom input).
* Make sure the variable uses **single curly braces only**:
  * ✅ `{client_firstname}`
  * ❌ `{{client_firstname}}`
  * ❌ `{{{client_firstname}}}`
* Save the changes and test again.

<Accordion title="thinkrr Dynamic Variables" icon="clipboard" iconType="duotone">
  ### Basic Contact Variables

  These are the most commonly used variables for referencing contact information:

  * `{client_firstname}`
  * `{client_lastname}`
  * `{client_phone}`
  * `{client_email}`
  * `{client_insight}`

  ### Contextual Variables

  Used to reference time and environment details dynamically:

  * `{current_data_time}`
  * `{time_zone}`

  ### Scenario-Specific Dynamic Variables

  These are configured per scenario to tailor the conversation and logic:

  * `{ai_agent_name}`
  * `{representative_name}`
  * `{profession}`
  * `{company_name}`
  * `{initial_greeting}`
  * `{introduction}`
  * `{closing_statement}`
  * `{reason_for_meeting}`
  * `{meeting_value_proposition}`
  * `{appointment_timeframe}`
  * `{alternative_timeframe}`
  * `{meeting_location}`
  * `{calendar_id}`
  * `{voicemail_message}`
  * `{event}`
  * `{event_occurrence}`

  ### Response Variables (Populated After AI Interaction)

  These variables are filled in live during the call based on AI-captured responses:

  * `{appointment}`
  * `{meeting_duration}`
  * `{meeting_location}`
</Accordion>

### If You're Using GHL Native Variables (like `{{contact.phone_raw}}`)

* Open the **Contacts** tab in GHL.

  <Frame>
    <img src="https://mintcdn.com/thinkrrai/cUxtuDUW_RkAiPup/images/ghlcontacts.png?fit=max&auto=format&n=cUxtuDUW_RkAiPup&q=85&s=cea49ce26c8fe584574a9849f87a59de" alt="Ghlcontacts Pn" width="1920" height="1080" data-path="images/ghlcontacts.png" />
  </Frame>
* Check the record for the specific contact used in your test or call.

  <Frame>
    <img src="https://mintcdn.com/thinkrrai/kyqxJ3lGoBrlunut/images/selectcontact.png?fit=max&auto=format&n=kyqxJ3lGoBrlunut&q=85&s=4ab0060c61a9d59572a362bb03fdaf35" alt="Selectcontact Pn" width="1920" height="1080" data-path="images/selectcontact.png" />
  </Frame>
* If any variable field (e.g. `First Name`, `Phone`, etc.) is empty, fill it in manually if you need to call that value in your workflow.

  <Frame>
    <img src="https://mintcdn.com/thinkrrai/Fg0ZfRSoAOA19L1f/images/entermissingdata.png?fit=max&auto=format&n=Fg0ZfRSoAOA19L1f&q=85&s=c7ff751b8d2e1833380a908e6ea5f466" alt="Entermissingdata Pn" width="1920" height="1080" data-path="images/entermissingdata.png" />
  </Frame>
* Re-run the workflow or trigger to confirm it's resolved.

This issue can be caused by:

* **Incomplete data capture** during lead opt-in
* A **misconfigured workflow** failing to assign contact details
* An **internal GHL bug** that drops or misroutes data

Once corrected, GHL will send usable string values to thinkrr, and the `[object Object]` message will disappear.

## Workarounds

<AccordionGroup>
  <Accordion title="Use Only Single Curly Braces for thinkrr Variables" icon="hammer" iconType="duotone">
    Always use `{variable}` format inside any thinkrr inputs when building workflows in GHL. Do not wrap them in `{{` or `{{{` brackets unless it's a GHL native variable.
  </Accordion>

  <Accordion title="Avoid Legacy Templates or Old Input Scripts" icon="hammer" iconType="duotone">
    Rebuild any thinkrr scenario using a clean, updated template to avoid inherited syntax issues.
  </Accordion>

  <Accordion title="Manually Verify GHL Contact Records" icon="hammer" iconType="duotone">
    If native GHL variables still return `[object Object]`, it's likely the contact profile is missing values. Manually update the record and re-test.
  </Accordion>

  <Accordion title="Hardcode Known Values for Testing" icon="hammer" iconType="duotone">
    If testing, replace the dynamic variable with a static fallback (e.g. "Hi John!") to rule out variable mapping issues.
  </Accordion>
</AccordionGroup>

## FAQs & Troubleshooting

### General Questions

<Accordion title="Why is my thinkrr call saying [object Object]?" icon="message-question" iconType="duotone">
  This means thinkrr received a variable from GHL that was either misformatted or empty. thinkrr doesn't know how to interpret it, so it defaults to `[object Object]`.
</Accordion>

<Accordion title="Does this affect all users?" icon="message-question" iconType="duotone">
  No. This primarily affects legacy thinkrr users who built scenarios using older templates that included double or triple curly braces.
</Accordion>

<Accordion title="Are thinkrr variables and GHL variables different?" icon="message-question" iconType="duotone">
  Yes. thinkrr variables must use **single curly braces**, while GHL native variables often use `{{contact.*}}` format. Mixing them incorrectly can cause formatting errors.
</Accordion>

### Configuration

<Accordion title="Can I fix the error without rebuilding everything?" icon="gear" iconType="duotone">
  Yes. Update any `{}` variables to use the correct bracket format and double-check your contact records for missing values.
</Accordion>

<Accordion title="How do I know which field is causing the issue?" icon="gear" iconType="duotone">
  Listen to your thinkrr call recording or read the transcript. The section where `[object Object]` is read aloud tells you which variable is broken.
</Accordion>

<Accordion title="Are triple braces ever needed?" icon="gear" iconType="duotone">
  No. thinkrr no longer supports triple braces in input fields. Avoid using them unless explicitly instructed by the documentation or support.
</Accordion>

### Usage and Results

<Accordion title="Will this break other parts of my thinkrr workflow?" icon="book-open" iconType="duotone">
  Yes — if left unresolved, `[object Object]` will appear in live calls, voicemails, and transcripts. It's best to fix the root issue as soon as possible.
</Accordion>

<Accordion title="Is this a bug with thinkrr or GHL?" icon="book-open" iconType="duotone">
  It's usually a formatting or data sync issue, not a platform bug. That said, incomplete contact data and old workflows are common culprits.
</Accordion>

<Accordion title="Do I need to reconfigure all my GHL actions?" icon="book-open" iconType="duotone">
  Only if they rely on thinkrr variables with incorrect bracket formatting. New workflows created from updated templates are unaffected.
</Accordion>

***

For additional questions or guidance, try using our [**Virtual Support Agent**](/Thinkrr-Support-Agent)! Available 24/7 at [thinkrr.ai/support](https://thinkrr.ai/support).

If you still need assistance, visit our help site at [help.thinkrr.ai](https://help.thinkrr.ai) and submit a [Ticket](/Support-Ticket-System) or contact our team directly at [hello@thinkrr.ai](mailto:hello@thinkrr.ai).
