Tilda Integration with CRM and Analytics

Our company is engaged in the development, support and maintenance of sites of any complexity. From simple one-page sites to large-scale cluster systems built on micro services. Experience of developers is confirmed by certificates from vendors.
Development and maintenance of all types of websites:
Informational websites or web applications
Business card websites, landing pages, corporate websites, online catalogs, quizzes, promo websites, blogs, news resources, informational portals, forums, aggregators
E-commerce websites or web applications
Online stores, B2B portals, marketplaces, online exchanges, cashback websites, exchanges, dropshipping platforms, product parsers
Business process management web applications
CRM systems, ERP systems, corporate portals, production management systems, information parsers
Electronic service websites or web applications
Classified ads platforms, online schools, online cinemas, website builders, portals for electronic services, video hosting platforms, thematic portals

These are just some of the technical types of websites we work with, and each of them can have its own specific features and functionality, as well as be customized to meet the specific needs and goals of the client.

Our competencies:
Development stages
Latest works
  • image_website-b2b-advance_0.png
    B2B ADVANCE company website development
    1212
  • image_web-applications_feedme_466_0.webp
    Development of a web application for FEEDME
    1161
  • image_websites_belfingroup_462_0.webp
    Website development for BELFINGROUP
    852
  • image_ecommerce_furnoro_435_0.webp
    Development of an online store for the company FURNORO
    1041
  • image_crm_enviok_479_0.webp
    Development of a web application for Enviok
    822
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Website development for FIXPER company
    815

Tilda Integration with CRM and Analytics

Tilda doesn't provide server code, but has well-documented webhook mechanism and flexible HTML block for inserting arbitrary code. For CRM integrations, three approaches are used: built-in integrations in site settings, webhook to custom handler, and direct JS integrations via T123 block.

Built-in Integrations

In Tilda site settings, "Integrations" section contains ready connectors for amoCRM, Bitrix24, GetResponse, Mailchimp, SendPulse, and others. Setup takes 15–30 minutes: provide API key, map form fields to CRM fields — done.

Limitation: field mapping is limited, no conditions, additional logic unavailable.

Webhook to Custom Handler

For non-standard CRM or complex logic — webhook:

In Tilda form settings: "After Send" → "Webhook" → specify URL.

Tilda sends POST with form data in application/x-www-form-urlencoded format:

Name=Ivan+Ivanov&Phone=%2B79001234567&Email=ivan%40example.com&formid=form123456789&tranid=1234567890

Handler on Laravel:

public function handleTildaWebhook(Request $request): Response
{
    $data = $request->all();

    // Basic check — Tilda doesn't sign requests cryptographically,
    // so protection via IP filter or secret parameter in URL
    $expectedToken = config('services.tilda.webhook_token');
    if ($request->query('token') !== $expectedToken) {
        abort(403);
    }

    $lead = [
        'name'   => $data['Name'] ?? $data['name'] ?? '',
        'phone'  => $data['Phone'] ?? $data['phone'] ?? '',
        'email'  => $data['Email'] ?? $data['email'] ?? '',
        'source' => 'tilda',
        'form'   => $data['formid'] ?? '',
    ];

    // Create lead in CRM
    dispatch(new CreateCRMLead($lead));

    return response('OK', 200);
}

Important note: Tilda doesn't cryptographically sign webhook requests. Protection either via secret token in URL (?token=xxx) or IP filter (Tilda server IPs are published in docs).

Analytics via GTM

For tracking form events in Google Analytics 4 or Yandex.Metrica, standard approach is Google Tag Manager. Tilda supports GTM code insertion:

"Site Settings" → "Analytics" → "Google Tag Manager" → enter container ID (GTM-XXXXXXX).

After that in GTM setup trigger on Tilda form submission. Tilda generates custom event:

// Event that Tilda sends to dataLayer after successful form submission
window.addEventListener('message', function(event) {
    if (event.data && event.data.indexOf('tildaCallback') >= 0) {
        const data = JSON.parse(event.data);
        if (data.event === 'tf-success') {
            dataLayer.push({
                event: 'tilda_form_submit',
                formId: data.formId,
                pageName: document.title,
            });
        }
    }
});

In GTM: trigger → "Custom event" → tilda_form_submit. Bind GA4 tag to it with generate_lead event.

Passing UTM Tags to CRM

UTM tags from URL must be saved and passed with lead. Tilda supports this via hidden form fields:

  1. Add hidden fields to form with names utm_source, utm_medium, utm_campaign, etc.
  2. In form settings enable "Automatically fill UTM tags in hidden fields".

After that webhook receives filled UTM fields, which can be passed to CRM as deal attributes.

Passing Data from Tilda to Bitrix24 via Webhook

public function sendToBitrix(array $lead): void
{
    $webhookUrl = config('services.bitrix24.webhook_url');

    Http::post("{$webhookUrl}crm.lead.add.json", [
        'fields' => [
            'TITLE'      => "Lead from site: {$lead['name']}",
            'NAME'       => $lead['name'],
            'PHONE'      => [['VALUE' => $lead['phone'], 'VALUE_TYPE' => 'WORK']],
            'EMAIL'      => [['VALUE' => $lead['email'], 'VALUE_TYPE' => 'WORK']],
            'SOURCE_ID'  => 'WEB',
            'SOURCE_DESCRIPTION' => "Tilda, form: {$lead['form']}",
            'UF_CRM_UTM_SOURCE'  => $lead['utm_source'] ?? '',
        ],
    ]);
}

Bitrix24 webhook generated in "For Developers" → "Incoming webhook" → select crm rights.

Timelines

Setting up built-in Tilda → CRM integration via standard connector: 30–60 minutes. Implementing custom webhook handler with field mapping and UTM tracking: 3–5 hours. Full analytics stack with GTM, GA4, Metrica and UTM transfer to CRM — 1 business day.