טופס משוב לקוחות
שאלו את הלקוחות איך היה: דירוג, מה עבד ומה צריך לתקן.
משתמשים ב-Tilda? הדביקו בבלוק T123 (מסלול בתשלום) או השתמשו בוובהוק בלי קוד.
למה הטופס הזה משמש
טפסי משוב עובדים כשהם קצרים וכשאנשים מאמינים שמישהו קורא אותם. דירוג נותן לכם מספר לעקוב אחריו. שתי שאלות פתוחות מספרות לכם למה.
התבנית לא מחייבת אף אחד למסור שם. שדות יצירת הקשר מופיעים רק כשהלקוח מסכים שייצרו איתו קשר, כך שאנשים יכולים להיות כנים בלי שירדפו אחריהם.
השדות החשובים
- דירוג
- חמישה שלבים, ממצוין עד גרוע מאוד. קל לענות וקל להשוות מחודש לחודש.
- מה אהבתם?
- מספר לכם מה לשמר ונותן לכם מילים לאתר שלכם.
- מה כדאי לנו לשפר?
- השדה השימושי ביותר בטופס. השאירו אותו אופציונלי כדי שיישאר כן.
- אפשר ליצור איתכם קשר לגבי המשוב?
- השם והאימייל מופיעים רק אחרי תשובה חיובית, כך שהמשוב יכול להישאר אנונימי.
תצוגה מקדימה
קוד הטופס
<!doctype html>
<html lang="he">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>טופס משוב לקוחות</title>
<style>
body { font-family: "Segoe UI", sans-serif; color: #12263a; margin: 0; background: #fff; }
main { max-width: 640px; margin: 0 auto; padding: 32px 20px 64px; }
h1 { font-size: 28px; font-weight: 650; letter-spacing: -0.02em; line-height: 1.2; }
h2 { font-size: 18px; margin: 18px 0 0; }
p { line-height: 1.5; }
form { display: grid; gap: 14px; position: relative; }
.field { display: grid; gap: 6px; }
label span, .check span { font-size: 14px; }
input, select, textarea { font: inherit; color: inherit; padding: 10px 12px; border: 1px solid #b4bdce; border-radius: 8px; width: 100%; box-sizing: border-box; background: #fff; }
textarea { min-height: 96px; }
.check { display: flex; gap: 8px; align-items: flex-start; }
.check input { width: auto; margin-top: 4px; }
button { background: #3c4ad8; color: #fff; border: 0; border-radius: 8px; padding: 12px 18px; font: inherit; cursor: pointer; }
.note { background: #fff6eb; padding: 12px 14px; border-radius: 8px; }
form [data-show-if] { display: none; }
form:has(select[name="may_contact"] option[value="yes"]:checked) [data-show-if="may_contact"][data-show-equals="yes"] { display: grid; }
</style>
</head>
<body>
<main>
<h1 data-i18n="title">טופס משוב לקוחות</h1>
<p data-i18n="lede">שאלו את הלקוחות איך היה: דירוג, מה עבד ומה צריך לתקן.</p>
<form id="fg-form" action="https://formgong.com/submit" method="POST" enctype="multipart/form-data" data-sitekey="" data-lang="he">
<input type="hidden" name="access_key" value="fk_your_access_key">
<input type="hidden" name="_lang" value="he">
<div aria-hidden="true" style="position:absolute;inset-inline-start:0;top:0;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)"><label>Leave this field empty<input name="botcheck" tabindex="-1" autocomplete="off"></label></div>
<section><h2 data-i18n="section.feedback">Feedback</h2>
<div class="field"><label for="fg-rating"><span data-i18n="rating">How would you rate your experience?</span></label><select id="fg-rating" name="rating" required><option value="">—</option><option value="5" data-i18n="rating.5">Excellent</option><option value="4" data-i18n="rating.4">Good</option><option value="3" data-i18n="rating.3">Okay</option><option value="2" data-i18n="rating.2">Poor</option><option value="1" data-i18n="rating.1">Very poor</option></select></div>
<div class="field"><label for="fg-liked"><span data-i18n="liked">What did you like?</span></label><textarea id="fg-liked" name="liked" maxlength="1000"></textarea></div>
<div class="field"><label for="fg-improve"><span data-i18n="improve">What should we improve?</span></label><textarea id="fg-improve" name="improve" maxlength="1000"></textarea></div>
<div class="field"><label for="fg-recommend"><span data-i18n="recommend">Would you recommend us to a friend?</span></label><select id="fg-recommend" name="recommend"><option value="">—</option><option value="yes" data-i18n="recommend.yes">Yes</option><option value="no" data-i18n="recommend.no">No</option><option value="not_sure" data-i18n="recommend.not_sure">Not sure</option></select></div>
<div class="field"><label for="fg-may_contact"><span data-i18n="may_contact">May we contact you about your feedback?</span></label><select id="fg-may_contact" name="may_contact"><option value="">—</option><option value="yes" data-i18n="may_contact.yes">Yes</option><option value="no" data-i18n="may_contact.no">No</option></select></div>
<div class="field" data-show-if="may_contact" data-show-equals="yes"><label for="fg-name"><span data-i18n="name">Name</span></label><input id="fg-name" name="name" type="text" maxlength="80" autocomplete="name"></div>
<div class="field" data-show-if="may_contact" data-show-equals="yes"><label for="fg-email"><span data-i18n="email">Email</span></label><input id="fg-email" name="email" type="email" maxlength="120" autocomplete="email"></div></section>
<!-- Set data-sitekey on this form to YOUR_TURNSTILE_SITE_KEY. Required for attachments. -->
<div data-turnstile></div>
<button type="submit" data-i18n="submit">שליחה</button>
<p data-status role="status"></p>
</form>
</main>
<script type="application/json" id="fg-labels">{"uk":{"title":"Форма відгуку клієнта","lede":"Запитайте клієнтів, як усе пройшло: оцінка, що сподобалося і що виправити.","submit":"Надіслати","thanks":"Надіслано. Дякуємо.","file_too_big":"До 3 файлів, по 5 MiB, разом до 10 MiB.","error":"Не вдалося надіслати. Спробуйте ще раз.","section.feedback":"Відгук","rating":"Як ви оцінюєте свій досвід?","rating.5":"Чудово","rating.4":"Добре","rating.3":"Нормально","rating.2":"Погано","rating.1":"Дуже погано","liked":"Що вам сподобалося?","improve":"Що нам варто покращити?","recommend":"Ви порадили б нас другові?","recommend.yes":"Так","recommend.no":"Ні","recommend.not_sure":"Ще не знаю","may_contact":"Чи можемо ми зв’язатися з вами щодо відгуку?","may_contact.yes":"Так","may_contact.no":"Ні","name":"Ім'я","email":"Електронна пошта"},"en":{"title":"Customer feedback form","lede":"Ask customers how it went: a rating, what worked and what to fix.","submit":"Send","thanks":"Sent. Thank you.","file_too_big":"Up to 3 files, 5 MiB each and 10 MiB combined.","error":"Could not send. Please try again.","section.feedback":"Feedback","rating":"How would you rate your experience?","rating.5":"Excellent","rating.4":"Good","rating.3":"Okay","rating.2":"Poor","rating.1":"Very poor","liked":"What did you like?","improve":"What should we improve?","recommend":"Would you recommend us to a friend?","recommend.yes":"Yes","recommend.no":"No","recommend.not_sure":"Not sure","may_contact":"May we contact you about your feedback?","may_contact.yes":"Yes","may_contact.no":"No","name":"Name","email":"Email"},"pl":{"title":"Formularz opinii klienta","lede":"Zapytaj klientów, jak poszło: ocena, co się udało i co poprawić.","submit":"Wyślij","thanks":"Wysłano. Dziękujemy.","file_too_big":"Do 3 plików, po 5 MiB, łącznie 10 MiB.","error":"Nie udało się wysłać. Spróbuj ponownie.","section.feedback":"Opinia","rating":"Jak oceniasz swoje doświadczenie?","rating.5":"Świetnie","rating.4":"Dobrze","rating.3":"W porządku","rating.2":"Słabo","rating.1":"Bardzo słabo","liked":"Co Ci się podobało?","improve":"Co powinniśmy poprawić?","recommend":"Czy polecisz nas znajomemu?","recommend.yes":"Tak","recommend.no":"Nie","recommend.not_sure":"Nie wiem","may_contact":"Czy możemy się z Tobą skontaktować w sprawie opinii?","may_contact.yes":"Tak","may_contact.no":"Nie","name":"Imię","email":"E-mail"},"tr":{"title":"Müşteri geri bildirim formu","lede":"Müşterilere nasıl geçtiğini sorun: bir puan, neyin iyi gittiği ve neyin düzeltilmesi gerektiği.","submit":"Gönder","thanks":"Gönderildi. Teşekkürler.","file_too_big":"En fazla 3 dosya, dosya başına 5 MiB, toplam 10 MiB.","error":"Gönderilemedi. Lütfen tekrar deneyin.","section.feedback":"Geri bildirim","rating":"Deneyiminizi nasıl değerlendirirsiniz?","rating.5":"Mükemmel","rating.4":"İyi","rating.3":"Fena değil","rating.2":"Kötü","rating.1":"Çok kötü","liked":"Neyi beğendiniz?","improve":"Neyi geliştirmeliyiz?","recommend":"Bizi bir arkadaşınıza önerir misiniz?","recommend.yes":"Evet","recommend.no":"Hayır","recommend.not_sure":"Emin değilim","may_contact":"Geri bildiriminiz hakkında sizinle iletişime geçebilir miyiz?","may_contact.yes":"Evet","may_contact.no":"Hayır","name":"Ad","email":"E-posta"},"ar":{"title":"نموذج آراء العملاء","lede":"اسأل العملاء عن تجربتهم: تقييم، وما الذي نجح، وما الذي يجب إصلاحه.","submit":"إرسال","thanks":"تم الإرسال. شكرًا لك.","file_too_big":"حتى 3 ملفات، 5 MiB لكل ملف و10 MiB إجمالًا.","error":"تعذّر الإرسال. يُرجى المحاولة مرة أخرى.","section.feedback":"الرأي","rating":"كيف تقيّم تجربتك؟","rating.5":"ممتاز","rating.4":"جيد","rating.3":"مقبول","rating.2":"سيئ","rating.1":"سيئ جدًا","liked":"ما الذي أعجبك؟","improve":"ما الذي يجب أن نحسّنه؟","recommend":"هل توصي بنا لصديق؟","recommend.yes":"نعم","recommend.no":"لا","recommend.not_sure":"لست متأكدًا","may_contact":"هل يمكننا التواصل معك بشأن رأيك؟","may_contact.yes":"نعم","may_contact.no":"لا","name":"الاسم","email":"البريد الإلكتروني"},"he":{"title":"טופס משוב לקוחות","lede":"שאלו את הלקוחות איך היה: דירוג, מה עבד ומה צריך לתקן.","submit":"שליחה","thanks":"נשלח. תודה.","file_too_big":"עד 3 קבצים, 5 MiB לכל קובץ ו-10 MiB בסך הכול.","error":"השליחה נכשלה. נסו שוב.","section.feedback":"משוב","rating":"איך הייתם מדרגים את החוויה?","rating.5":"מצוין","rating.4":"טוב","rating.3":"סביר","rating.2":"גרוע","rating.1":"גרוע מאוד","liked":"מה אהבתם?","improve":"מה כדאי לנו לשפר?","recommend":"הייתם ממליצים עלינו לחבר?","recommend.yes":"כן","recommend.no":"לא","recommend.not_sure":"עוד לא יודע/ת","may_contact":"אפשר ליצור איתכם קשר לגבי המשוב?","may_contact.yes":"כן","may_contact.no":"לא","name":"שם","email":"אימייל"},"es":{"title":"Formulario de opinión de clientes","lede":"Pregunta a tus clientes cómo les fue: una valoración, qué funcionó y qué mejorar.","submit":"Enviar","thanks":"Enviado. Gracias.","file_too_big":"Hasta 3 archivos, 5 MiB cada uno y 10 MiB en total.","error":"No se pudo enviar. Inténtalo de nuevo.","section.feedback":"Opinión","rating":"¿Cómo valorarías tu experiencia?","rating.5":"Excelente","rating.4":"Buena","rating.3":"Normal","rating.2":"Mala","rating.1":"Muy mala","liked":"¿Qué te gustó?","improve":"¿Qué deberíamos mejorar?","recommend":"¿Nos recomendarías a un amigo?","recommend.yes":"Sí","recommend.no":"No","recommend.not_sure":"No lo sé","may_contact":"¿Podemos contactarte sobre tu opinión?","may_contact.yes":"Sí","may_contact.no":"No","name":"Nombre","email":"Correo electrónico"},"fr":{"title":"Formulaire d’avis client","lede":"Demandez à vos clients comment ça s’est passé : une note, ce qui a plu et ce qu’il faut corriger.","submit":"Envoyer","thanks":"Envoyé. Merci.","file_too_big":"Jusqu’à 3 fichiers, 5 Mio chacun et 10 Mio au total.","error":"Envoi impossible. Veuillez réessayer.","section.feedback":"Avis","rating":"Comment évaluez-vous votre expérience ?","rating.5":"Excellent","rating.4":"Bien","rating.3":"Correct","rating.2":"Médiocre","rating.1":"Très mauvais","liked":"Qu’avez-vous apprécié ?","improve":"Que devrions-nous améliorer ?","recommend":"Nous recommanderiez-vous à un ami ?","recommend.yes":"Oui","recommend.no":"Non","recommend.not_sure":"Je ne sais pas encore","may_contact":"Pouvons-nous vous contacter au sujet de votre avis ?","may_contact.yes":"Oui","may_contact.no":"Non","name":"Nom","email":"E-mail"},"pt":{"title":"Formulário de feedback de clientes","lede":"Pergunte aos clientes como correu: uma avaliação, o que funcionou e o que corrigir.","submit":"Enviar","thanks":"Enviado. Obrigado.","file_too_big":"Até 3 ficheiros, 5 MiB cada e 10 MiB no total.","error":"Não foi possível enviar. Tente novamente.","section.feedback":"Feedback","rating":"Como avalia a sua experiência?","rating.5":"Excelente","rating.4":"Boa","rating.3":"Razoável","rating.2":"Fraca","rating.1":"Muito fraca","liked":"O que gostou?","improve":"O que devemos melhorar?","recommend":"Recomendaria-nos a um amigo?","recommend.yes":"Sim","recommend.no":"Não","recommend.not_sure":"Ainda não sei","may_contact":"Podemos contactá-lo sobre o seu feedback?","may_contact.yes":"Sim","may_contact.no":"Não","name":"Nome","email":"Email"},"hi":{"title":"ग्राहक फ़ीडबैक फ़ॉर्म","lede":"ग्राहकों से पूछें कि अनुभव कैसा रहा: रेटिंग, क्या अच्छा लगा और क्या सुधारना है।","submit":"भेजें","thanks":"भेज दिया गया। धन्यवाद।","file_too_big":"अधिकतम 3 फ़ाइलें, हर फ़ाइल 5 MiB तक और कुल 10 MiB।","error":"भेजा नहीं जा सका। कृपया फिर से कोशिश करें।","section.feedback":"फ़ीडबैक","rating":"आप अपने अनुभव को कैसे रेट करेंगे?","rating.5":"बेहतरीन","rating.4":"अच्छा","rating.3":"ठीक-ठाक","rating.2":"ख़राब","rating.1":"बहुत ख़राब","liked":"आपको क्या अच्छा लगा?","improve":"हमें क्या सुधारना चाहिए?","recommend":"क्या आप हमें किसी दोस्त को सुझाएँगे?","recommend.yes":"हाँ","recommend.no":"नहीं","recommend.not_sure":"पता नहीं","may_contact":"क्या हम आपके फ़ीडबैक के बारे में आपसे संपर्क कर सकते हैं?","may_contact.yes":"हाँ","may_contact.no":"नहीं","name":"नाम","email":"ईमेल"},"ja":{"title":"お客様アンケート(感想)フォーム","lede":"お客様にご感想を伺います。評価、良かった点、改善点。","submit":"送信","thanks":"送信しました。ありがとうございます。","file_too_big":"ファイルは3つまで、1つ5 MiB、合計10 MiBまでです。","error":"送信できませんでした。もう一度お試しください。","section.feedback":"ご感想","rating":"全体の満足度はいかがでしたか?","rating.5":"とても良い","rating.4":"良い","rating.3":"普通","rating.2":"悪い","rating.1":"とても悪い","liked":"良かった点を教えてください","improve":"改善すべき点を教えてください","recommend":"ご友人に勧めたいと思いますか?","recommend.yes":"はい","recommend.no":"いいえ","recommend.not_sure":"未定","may_contact":"ご感想についてご連絡してもよろしいですか?","may_contact.yes":"はい","may_contact.no":"いいえ","name":"お名前","email":"メールアドレス"},"de":{"title":"Kundenfeedback-Formular","lede":"Fragen Sie Ihre Kunden, wie es war: eine Bewertung, was gut lief und was besser werden muss.","submit":"Senden","thanks":"Gesendet. Vielen Dank.","file_too_big":"Bis zu 3 Dateien, je 5 MiB und insgesamt 10 MiB.","error":"Senden fehlgeschlagen. Bitte versuchen Sie es erneut.","section.feedback":"Feedback","rating":"Wie bewerten Sie Ihre Erfahrung?","rating.5":"Ausgezeichnet","rating.4":"Gut","rating.3":"In Ordnung","rating.2":"Schlecht","rating.1":"Sehr schlecht","liked":"Was hat Ihnen gefallen?","improve":"Was sollten wir verbessern?","recommend":"Würden Sie uns einem Freund empfehlen?","recommend.yes":"Ja","recommend.no":"Nein","recommend.not_sure":"Noch unklar","may_contact":"Dürfen wir Sie zu Ihrem Feedback kontaktieren?","may_contact.yes":"Ja","may_contact.no":"Nein","name":"Name","email":"E-Mail"}}</script>
<script>
function mountCaptcha(node, siteKey) {
if (!node || !siteKey) return () => {};
let disposed = false;
let widget;
function render() {
if (disposed || !window.turnstile) return;
window.turnstile.ready(() => {
if (disposed) return;
widget = window.turnstile.render(node, { sitekey: siteKey, language: node.dataset.language || document.documentElement.lang || "auto" });
node.dataset.widgetId = widget;
});
}
if (window.turnstile) render();
else {
let script = document.querySelector('script[src^="https://challenges.cloudflare.com/turnstile/v0/api.js"]');
if (!script) {
script = document.createElement("script");
script.src = "https://challenges.cloudflare.com/turnstile/v0/api.js?render=explicit";
script.async = true;
document.head.appendChild(script);
}
script.addEventListener("load", render, { once: true });
}
return () => { disposed = true; if (widget !== undefined) window.turnstile?.remove(widget); };
}
function resetCaptcha(form) {
const widget = form.querySelector("[data-turnstile]")?.dataset.widgetId;
if (widget !== undefined) window.turnstile?.reset(widget);
}
(function () {
var MAX = 5242880;
var form = document.getElementById("fg-form");
var packNode = document.getElementById("fg-labels");
if (!form || !packNode) return;
var pack = JSON.parse(packNode.textContent);
function code() {
var q = new URLSearchParams(location.search).get("lang") || "";
// ?lang= preview override, then the form language chosen when copying, then the page and browser.
var raw = (q || form.getAttribute("data-lang") || document.documentElement.lang || (navigator.language || "en")).slice(0, 2).toLowerCase();
return pack[raw] ? raw : "en";
}
function apply() {
var dict = pack[code()];
document.querySelectorAll("[data-i18n]").forEach(function (node) {
var key = node.getAttribute("data-i18n");
if (key && typeof dict[key] === "string") node.textContent = dict[key];
});
}
apply();
var status = form.querySelector("[data-status]");
form.addEventListener("submit", function (event) {
event.preventDefault();
var dict = pack[code()];
var body = new FormData(form);
var files = Array.from(body.values()).filter(function (value) { return value instanceof File && value.size; });
if (files.length > 3 || files.some(function (file) { return file.size > MAX; }) || files.reduce(function (sum,file) { return sum + file.size; },0) > 10 * 1024 * 1024) {
if (status) status.textContent = dict.file_too_big;
return;
}
var button = form.querySelector("button[type=submit]");
if (button) button.disabled = true;
fetch(form.action, { method: "POST", headers: { Accept: "application/json" }, body: body })
.then(function (response) { return response.json(); }).then(function (result) {
if (status) status.textContent = result && result.success ? dict.thanks : ((result && result.message) || dict.error);
}).catch(function () { if (status) status.textContent = dict.error; })
.finally(function () { if (button) button.disabled = false; resetCaptcha(form); });
});
mountCaptcha(form.querySelector("[data-turnstile]"), form.dataset.sitekey);
})();
</script>
</body>
</html>
קוד למסגרות אחרות
Svelte
איך לקבל יותר פניות
- שאלו מיד אחרי השירות, כשהחוויה עדיין טרייה.
- השיבו תוך יום לכל דירוג גרוע שבו הלקוח השאיר אימייל.
- ספרו ללקוחות מה שיניתם בעקבות המשוב שלהם.
לענות על כל פנייה
שלחו דירוגים גרועים ל-Telegram כדי להגיב באותו יום. הסטטוסים מראים איזה משוב כבר טופל. עם סקריפט האנליטיקה האופציונלי, Formgong גם סופר כמה אנשים בחרו בכל דירוג.
שאלות ותשובות
האם המשוב יכול להיות אנונימי?
כן. השם והאימייל אופציונליים ומופיעים רק כשהלקוח מסכים שייצרו איתו קשר.
אפשר להציג משוב טוב באתר שלי?
שאלו קודם את הלקוח. לביקורות פומביות עם כוכבים, השתמשו בתכונת הביקורות, שבה אתם מאשרים כל ביקורת לפני שהיא עולה.
איפה התשובות נשמרות?
באחסון של Formgong באיחוד האירופי, ונמסרות לאימייל ול-Telegram שלכם. בתוכנית החינמית הן נשמרות למשך 30 ימים.