[{"data":1,"prerenderedAt":217},["ShallowReactive",2],{"blog-how-to-create-right-to-left-forms":3},{"blogData":4,"relatedArticles":139},{"id":5,"title":6,"author":7,"authorImage":8,"authorProfile":9,"coverImg":10,"coverImgAlt":11,"createdAt":12,"description":13,"featured":14,"jsonld":15,"keywords":128,"metaDescription":13,"metaImage":129,"metaTitle":46,"publishedAt":130,"slug":131,"updatedAt":132,"__hash__":133,"body":134,"coverImgWidth":135,"coverImgHeight":136,"readingStats":137},"blog\u002Fblog\u002Fhow-to-create-right-to-left-forms.md","Google Forms Right to Left: How to Make RTL Forms (and 3 Native Alternatives)","Harsh Shah",null,"https:\u002F\u002Flinkedin.com\u002Fin\u002Fharshshahseo","https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002F75_e6bfe24fc4.png","a blog post cover about how to create right to left forms","2025-07-31T17:39:19.111Z","Google Forms has no official RTL setting. Here is the language workaround that flips your forms right to left, a language-by-language guide (Arabic, Hebrew, Urd",false,[16],{"@graph":17,"@context":127},[18,32,48,67,83,120],{"@id":19,"@type":20,"image":10,"author":21,"headline":6,"publisher":24,"description":28,"dateModified":29,"datePublished":30,"mainEntityOfPage":31},"https:\u002F\u002Fformester.com\u002Fblog\u002Fhow-to-create-right-to-left-forms\u002F#article","BlogPosting",{"name":22,"@type":23},"Formester","Organization",{"logo":25,"name":22,"@type":23},{"url":26,"@type":27},"https:\u002F\u002Fformester.com\u002Flogo.png","ImageObject","Google Forms has no official RTL setting. Here is the language workaround that flips your forms right to left, a language-by-language guide (Arabic, Hebrew, Urdu, Persian, Pashto), and three form builders with native RTL support.","2026-06-11","2025-07-31","https:\u002F\u002Fformester.com\u002Fblog\u002Fhow-to-create-right-to-left-forms\u002F",{"@id":33,"@type":34,"itemListElement":35},"https:\u002F\u002Fformester.com\u002Fblog\u002Fhow-to-create-right-to-left-forms\u002F#breadcrumb","BreadcrumbList",[36,41,45],{"item":37,"name":38,"@type":39,"position":40},"https:\u002F\u002Fformester.com\u002F","Home","ListItem",1,{"item":42,"name":43,"@type":39,"position":44},"https:\u002F\u002Fformester.com\u002Fblog\u002F","Blog",2,{"item":31,"name":46,"@type":39,"position":47},"Google Forms Right to Left: How to Make RTL Forms",3,{"name":49,"step":50,"@type":65,"description":66},"How to flip Google Forms to right to left (language workaround)",[51,55,58,61],{"name":52,"text":53,"@type":54,"position":40},"Open Google Forms","Sign in to forms.google.com with the Google account you build forms with.","HowToStep",{"name":56,"text":57,"@type":54,"position":44},"Open Google Account settings","Click your profile icon, then Manage your Google Account, then Personal info, then Language.",{"name":59,"text":60,"@type":54,"position":47},"Add an RTL language","Add Arabic, Hebrew, Urdu, or Persian and set it as primary.",{"name":62,"text":63,"@type":54,"position":64},"Refresh Google Forms","Reload forms.google.com. The editor and every form you open or create defaults to RTL.",4,"HowTo","Change your Google account's Forms language to an RTL language (Arabic, Hebrew, Urdu, Persian) to flip the form editor to right-to-left alignment.",{"name":68,"step":69,"@type":65,"description":82},"How to make a native RTL form in Formester",[70,73,76,79],{"name":71,"text":72,"@type":54,"position":40},"Build your base form","Use the AI form builder or open an existing form.",{"name":74,"text":75,"@type":54,"position":44},"Toggle Multilanguage on","Open Advanced settings and switch Multilanguage on.",{"name":77,"text":78,"@type":54,"position":47},"Add an RTL language and translate","Click Add Language, pick Arabic, Hebrew, Urdu, or Persian, then click Translate with AI.",{"name":80,"text":81,"@type":54,"position":64},"Preview and share","Hit Preview, test on mobile, then share by link, QR code, or one of the six embed modes.","Build a form once, add Arabic, Hebrew, Urdu, or Persian as a language, AI translates and aligns RTL.",{"@type":84,"mainEntity":85},"FAQPage",[86,92,96,100,104,108,112,116],{"name":87,"@type":88,"acceptedAnswer":89},"Does Google Forms officially support right to left?","Question",{"text":90,"@type":91},"No. Google has not shipped an RTL setting. The only workaround is to change your Google account's Forms language to an RTL language, which flips the form direction in your own editor and preview. Respondents on default-English Google accounts still see a left-to-right form.","Answer",{"name":93,"@type":88,"acceptedAnswer":94},"What other form builders support RTL natively?",{"text":95,"@type":91},"Formester (toggle Multilanguage, pick an RTL language, AI translates and aligns), Fillout (per-form Right-to-left toggle), and Jotform (paste a custom CSS block) all support RTL. forms.app and Gravity Forms also offer RTL with setup beyond a single toggle.",{"name":97,"@type":88,"acceptedAnswer":98},"How do I add a Hebrew or Arabic form to my website?",{"text":99,"@type":91},"Build the form in a native RTL builder (Formester, Fillout, or Jotform), then embed it. In Formester, click Share and pick from six embed modes (inline, popup, sidebar, side tab, popover, fullscreen). The form keeps its RTL alignment inside the iframe.",{"name":101,"@type":88,"acceptedAnswer":102},"Can I have one form with both English and Arabic versions?",{"text":103,"@type":91},"Yes, in any builder with a multilanguage feature. Formester ships a language picker that lets respondents switch between English, Arabic, Hebrew, or any combination of 180+ languages. Google Forms does not have a native multilanguage feature.",{"name":105,"@type":88,"acceptedAnswer":106},"Does the Google Forms language hack work for respondents?",{"text":107,"@type":91},"No. The account-language setting is per-Google-account. Each respondent sees the form in their own account's language, not yours.",{"name":109,"@type":88,"acceptedAnswer":110},"Which RTL languages does Formester support?",{"text":111,"@type":91},"Formester's AI translation covers 180+ languages including Arabic, Hebrew, Urdu, Persian (Farsi and Dari), Pashto, Sindhi, and Kurdish (Sorani). RTL alignment applies automatically when the language is RTL.",{"name":113,"@type":88,"acceptedAnswer":114},"Will my form work on mobile in RTL?",{"text":115,"@type":91},"Yes, in any builder with native RTL. Touch targets, submit button placement, and label alignment all stay correct at every breakpoint.",{"name":117,"@type":88,"acceptedAnswer":118},"Can I use dir=rtl in HTML to make my own form RTL?",{"text":119,"@type":91},"Yes. Set dir=rtl on the form element (or a parent) and pair it with the right lang attribute (ar, he, ur, fa). For mixed-direction content like Latin-script brand names inside an RTL body, wrap them in bdi tags.",{"name":121,"@type":122,"embedUrl":123,"contentUrl":124,"uploadDate":30,"description":125,"thumbnailUrl":126},"How to Create Right to Left Forms in Formester","VideoObject","https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FccDNyDT8XDw","https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=ccDNyDT8XDw","4-step walkthrough of building a multilingual RTL form in Formester with AI translation.","https:\u002F\u002Fi.ytimg.com\u002Fvi\u002FccDNyDT8XDw\u002Fhqdefault.jpg","https:\u002F\u002Fschema.org","right to left forms,\nonline forms,\nmulti language forms,\n",[],"2026-06-15T04:46:55.613Z","how-to-create-right-to-left-forms","2026-06-15T04:46:55.621Z","XmZVf8XPV3nH4Bdi3cjOKBDB1I69R3UEs80SOD9sMls","![a blog post cover about how to create right to left forms](https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002F75_e6bfe24fc4.png)\n\n\u003Cstyle>\n\u002F* batch-1 blog normalisation *\u002F\n.fmstr-blog-lead {\n  font-size: 17px !important;\n  line-height: 1.65 !important;\n  color: #475467 !important;\n  font-weight: 400 !important;\n  margin: 0 0 16px !important;\n}\n.fmstr-blog-lead a { color: #6941c6 !important; font-weight: 500; }\n.fmstr-blog-lead a:hover { text-decoration: underline !important; }\n.fmstr-blog-lead strong { color: #101828; font-weight: 700; }\nsection[class^=\"fmstr-cmp-\"], section[class*=\" fmstr-cmp-\"] {\n  padding-top: 28px !important;\n  padding-bottom: 28px !important;\n}\n@media (max-width: 540px) {\n  section[class^=\"fmstr-cmp-\"], section[class*=\" fmstr-cmp-\"] {\n    padding-top: 24px !important;\n    padding-bottom: 24px !important;\n  }\n}\n\u003C\u002Fstyle>\n\n\u003Cstyle id=\"fmstr-blog-mobile-fullwidth-v3\">\n@media (max-width: 760px) {\n  .art-section { padding-left: 12px !important; padding-right: 12px !important; }\n}\n@media (max-width: 540px) {\n  .art-section { padding-left: 6px !important; padding-right: 6px !important; padding-top: 24px !important; }\n  section[class^=\"fmstr-cmp-\"], section[class*=\" fmstr-cmp-\"] {\n    padding-left: 0 !important; padding-right: 0 !important;\n    overflow-x: hidden !important; box-sizing: border-box !important;\n  }\n  section[class^=\"fmstr-cmp-\"] *, section[class^=\"fmstr-cmp-\"] *::before, section[class^=\"fmstr-cmp-\"] *::after { box-sizing: border-box !important; }\n  section[class^=\"fmstr-cmp-\"] > *, section[class^=\"fmstr-cmp-\"] > * > * { min-width: 0 !important; }\n  section[class^=\"fmstr-cmp-\"] [class*=\"__container\"] {\n    padding-left: 0 !important; padding-right: 0 !important;\n    max-width: 100% !important; width: 100% !important;\n  }\n  section[class^=\"fmstr-cmp-\"] [class*=\"__card\"],\n  section[class^=\"fmstr-cmp-\"] [class*=\"__step\"],\n  section[class^=\"fmstr-cmp-\"] [class*=\"__panel\"],\n  section[class^=\"fmstr-cmp-\"] [class*=\"__tool\"],\n  section[class^=\"fmstr-cmp-\"] [class*=\"__verdict\"],\n  section[class^=\"fmstr-cmp-\"] [class*=\"__row\"],\n  section[class^=\"fmstr-cmp-\"] [class*=\"__fix\"],\n  section[class^=\"fmstr-cmp-\"] [class*=\"__callout\"],\n  section[class^=\"fmstr-cmp-\"] [class*=\"__quote\"],\n  section[class^=\"fmstr-cmp-\"] [class*=\"__tldr\"],\n  section[class^=\"fmstr-cmp-\"] [class*=\"__answer\"],\n  section[class^=\"fmstr-cmp-\"] [class*=\"__faq\"],\n  section[class^=\"fmstr-cmp-\"] details {\n    padding-left: 14px !important; padding-right: 14px !important;\n    margin-left: 0 !important; margin-right: 0 !important;\n  }\n  section[class^=\"fmstr-cmp-\"] p, section[class^=\"fmstr-cmp-\"] li { font-size: 15px !important; line-height: 1.6 !important; }\n  section[class^=\"fmstr-cmp-\"] h2 { font-size: 22px !important; line-height: 1.22 !important; }\n  section[class^=\"fmstr-cmp-\"] h3 { font-size: 18px !important; line-height: 1.3 !important; }\n  section[class^=\"fmstr-cmp-\"] h4 { font-size: 16px !important; line-height: 1.35 !important; }\n  section[class^=\"fmstr-cmp-\"] table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; width: 100% !important; }\n  section[class^=\"fmstr-cmp-\"] img, section[class^=\"fmstr-cmp-\"] iframe, section[class^=\"fmstr-cmp-\"] video { max-width: 100% !important; height: auto !important; }\n  section[class^=\"fmstr-cmp-\"] pre, section[class^=\"fmstr-cmp-\"] code {\n    white-space: pre-wrap !important; overflow-wrap: anywhere !important; word-break: break-word !important;\n  }\n  section[class^=\"fmstr-cmp-\"] pre { overflow-x: auto; }\n  .fmstr-blog-lead { font-size: 16.5px !important; }\n}\n\u003C\u002Fstyle>\n\n\u003Cp class=\"fmstr-blog-lead\">Google Forms does not have a right-to-left toggle. Google's own help thread confirms there is \u003Ca href=\"https:\u002F\u002Fsupport.google.com\u002Fdocs\u002Fthread\u002F198216419\">no official RTL setting\u003C\u002Fa>. The only workaround is to change the Forms account language to Hebrew or Arabic, which flips all your forms RTL, but only in your own view.\u003C\u002Fp>\n\n\u003Cp class=\"fmstr-blog-lead\">If you want every respondent to see the form in RTL, native to their script, you need a form builder that ships RTL as a setting.\u003C\u002Fp>\n\n\u003Cp class=\"fmstr-blog-lead\">This guide covers the Google Forms workaround, the limits you should know about before shipping, a language-by-language quick reference for Arabic, Hebrew, Urdu, Persian, Pashto, and Sindhi, and three builders with native RTL support (Formester, Jotform, Fillout).\u003C\u002Fp>\n\n\u003Cstyle>\n.fmstr-cmp-rtl-tldr a { text-decoration: none !important; }\n.fmstr-cmp-rtl-tldr a { color: #5b34b1 !important; }\n.fmstr-cmp-rtl-tldr a:hover { text-decoration: underline !important; }\n.fmstr-cmp-rtl-tldr {\n--c-card: #f7f3ff;\n--c-fg-1: #101828; --c-fg-2: #475467; --c-fg-3: #697586;\n--c-violet-500: #7f56d9; --c-violet-600: #6941c6; --c-violet-700: #5b34b1;\n--c-edge: #e4d7ff; --c-border: #d6c2f7;\n--c-shadow: 0 1px 3px rgba(16,24,40,.05);\nbackground: transparent;\npadding: 28px 0 40px;\nfont-family: inherit;\ncolor: var(--c-fg-1);\ntext-align: left !important; overflow-x: hidden; -webkit-text-size-adjust: 100%;}\n.fmstr-cmp-rtl-tldr *, .fmstr-cmp-rtl-tldr *::before, .fmstr-cmp-rtl-tldr *::after { box-sizing: border-box; }\n.fmstr-cmp-rtl-tldr__container { max-width: 1200px; margin: 0 auto; }\n.fmstr-cmp-rtl-tldr__card {\nbackground: var(--c-card);\nborder: 1px solid var(--c-border);\nborder-left: 4px solid var(--c-violet-500);\nborder-radius: 14px;\npadding: 22px 26px;\nbox-shadow: var(--c-shadow);\ndisplay: flex; flex-direction: column; gap: 10px;\n}\n.fmstr-cmp-rtl-tldr__label {\nfont-size: 12px;\nfont-weight: 700;\nletter-spacing: 0.08em;\ntext-transform: uppercase;\ncolor: var(--c-violet-700) !important;\ndisplay: inline-flex;\nalign-items: center;\ngap: 8px;\nmargin: 0;\n}\n.fmstr-cmp-rtl-tldr__label::before {\ncontent: \"\";\nwidth: 8px; height: 8px; border-radius: 9999px;\nbackground: var(--c-violet-500);\ndisplay: inline-block;\n}\n.fmstr-cmp-rtl-tldr__body {\nfont-size: 16px;\nline-height: 1.65;\ncolor: var(--c-fg-1);\nmargin: 0;\nfont-weight: 500;\n}\n.fmstr-cmp-rtl-tldr__body strong { color: var(--c-violet-700); font-weight: 700; }\n\n@media (max-width: 540px) {\n.fmstr-cmp-rtl-tldr { padding: 20px 0 28px; }\n.fmstr-cmp-rtl-tldr__card { padding: 18px 20px; }\n.fmstr-cmp-rtl-tldr__body { font-size: 15px; }\n}\n\n\n\u002F* mobile-safety-v2 *\u002F\n.fmstr-cmp-rtl-tldr img, .fmstr-cmp-rtl-tldr table, .fmstr-cmp-rtl-tldr pre, .fmstr-cmp-rtl-tldr iframe, .fmstr-cmp-rtl-tldr video { max-width: 100%; }\n.fmstr-cmp-rtl-tldr > * { min-width: 0; }\n.fmstr-cmp-rtl-tldr [class*='__grid'] > *, .fmstr-cmp-rtl-tldr [class*='__list'] > *, .fmstr-cmp-rtl-tldr [class*='__cards'] > * { min-width: 0; max-width: 100%; }\n@media (max-width: 540px) {\n  .fmstr-cmp-rtl-tldr pre { overflow-x: auto; -webkit-overflow-scrolling: touch; }\n  .fmstr-cmp-rtl-tldr table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }\n}\n\u003C\u002Fstyle>\n\n\u003Csection class=\"fmstr-cmp-rtl-tldr\" aria-labelledby=\"fmstr-cmp-rtl-tldr-label\">\n\u003Cdiv class=\"fmstr-cmp-rtl-tldr__container\">\n\u003Cdiv class=\"fmstr-cmp-rtl-tldr__card\">\n\u003Cp class=\"fmstr-cmp-rtl-tldr__label\" id=\"fmstr-cmp-rtl-tldr-label\">Quick answer\u003C\u002Fp>\n\u003Cp class=\"fmstr-cmp-rtl-tldr__body\">\u003Cstrong>Google Forms does not have a right-to-left toggle.\u003C\u002Fstrong> The only workaround is to change your Google account's Forms language to Hebrew or Arabic, which flips the form RTL in your editor view, but respondents still see it left-to-right.\u003C\u002Fp>\n\u003Cp class=\"fmstr-cmp-rtl-tldr__body\">For respondent-facing RTL, use a native builder: \u003Ca href=\"\u002Ffeatures\u002Fdrag-and-drop-form-builder\u002F\">Formester\u003C\u002Fa> (toggle Multilanguage, pick Arabic, Hebrew, Urdu, Persian, Pashto, or Sindhi, AI translates and aligns), \u003Ca href=\"https:\u002F\u002Ffillout.com\u002Fhelp\u002Fright-to-left-forms\">Fillout\u003C\u002Fa> (per-form RTL flag), or \u003Ca href=\"https:\u002F\u002Fwww.jotform.com\u002Fhelp\u002Fhow-to-align-your-forms-to-a-right-to-left-direction\u002F\">Jotform\u003C\u002Fa> (custom CSS).\u003C\u002Fp>\n\u003Cp class=\"fmstr-cmp-rtl-tldr__body\">For developers, \u003Ccode>dir=\"rtl\"\u003C\u002Fcode> with the right \u003Ccode>lang\u003C\u002Fcode> attribute is the W3C-documented approach.\u003C\u002Fp>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fsection>\n\n\n\u003Cstyle>\n.fmstr-cmp-rtl-cmp a { text-decoration: none !important; }\n.fmstr-cmp-rtl-cmp a { color: #5b34b1 !important; }\n.fmstr-cmp-rtl-cmp a:hover { text-decoration: underline !important; }\n.fmstr-cmp-rtl-cmp {\n--c-card: #ffffff;\n--c-fg-1: #101828; --c-fg-2: #475467; --c-fg-3: #697586;\n--c-violet-500: #7f56d9; --c-violet-600: #6941c6; --c-violet-700: #5b34b1;\n--c-tint: #f7f3ff; --c-edge: #e4d7ff;\n--c-border: #eaecf0;\n--c-shadow: 0 1px 3px rgba(16,24,40,.05);\n--c-good: #12b76a; --c-bad: #f04438;\nbackground: transparent;\npadding: 48px 0;\nfont-family: inherit;\ncolor: var(--c-fg-1);\ntext-align: left !important;\noverflow-x: hidden;\n}\n.fmstr-cmp-rtl-cmp *, .fmstr-cmp-rtl-cmp *::before, .fmstr-cmp-rtl-cmp *::after { box-sizing: border-box; }\n.fmstr-cmp-rtl-cmp > *, .fmstr-cmp-rtl-cmp > * > * { min-width: 0; }\n.fmstr-cmp-rtl-cmp__container { max-width: 1200px; margin: 0 auto; }\n.fmstr-cmp-rtl-cmp__head { margin: 0 0 28px; }\n.fmstr-cmp-rtl-cmp__h2 {\nfont-size: clamp(26px, 3vw, 36px); font-weight: 700; line-height: 1.15;\nletter-spacing: -.02em; margin: 0; color: var(--c-fg-1);\n}\n.fmstr-cmp-rtl-cmp__intro { color: var(--c-fg-3); font-size: 17px; line-height: 1.6; margin: 14px 0 0; }\n.fmstr-cmp-rtl-cmp__grid {\ndisplay: grid; grid-template-columns: repeat(3, 1fr); gap: 14px;\n}\n.fmstr-cmp-rtl-cmp__card {\nbackground: var(--c-card);\nborder: 1px solid var(--c-border);\nborder-radius: 14px;\npadding: 22px;\nbox-shadow: var(--c-shadow);\ndisplay: flex; flex-direction: column; gap: 12px;\nmin-width: 0;\n}\n.fmstr-cmp-rtl-cmp__card--featured {\nborder-color: var(--c-edge);\nbackground: var(--c-tint);\nbox-shadow: 0 4px 18px rgba(105,65,198,.10);\n}\n.fmstr-cmp-rtl-cmp__chip {\ndisplay: inline-flex; align-items: center;\nfont-size: 11px; font-weight: 700; letter-spacing: 0.08em;\ntext-transform: uppercase; color: var(--c-violet-700) !important;\nbackground: var(--c-tint); border: 1px solid var(--c-edge);\npadding: 4px 10px; border-radius: 9999px;\nalign-self: flex-start;\n}\n.fmstr-cmp-rtl-cmp__name {\nfont-size: 18px; font-weight: 700; color: var(--c-fg-1);\nmargin: 0; line-height: 1.3;\n}\n.fmstr-cmp-rtl-cmp__best {\nfont-size: 13.5px; color: var(--c-fg-3); margin: 0;\n}\n.fmstr-cmp-rtl-cmp__best strong { color: var(--c-fg-1); font-weight: 600; }\n.fmstr-cmp-rtl-cmp__divider {\nheight: 1px; background: var(--c-border); margin: 4px 0; border: 0;\n}\n.fmstr-cmp-rtl-cmp__list {\nmargin: 0; padding: 0; list-style: none;\ndisplay: flex; flex-direction: column; gap: 8px;\n}\n.fmstr-cmp-rtl-cmp__item {\ndisplay: block; position: relative; padding-left: 26px;\nfont-size: 14px; line-height: 1.5; color: var(--c-fg-2);\n}\n.fmstr-cmp-rtl-cmp__item::before {\ncontent: \"\\2713\";\nposition: absolute; left: 0; top: 0.05em;\ncolor: var(--c-good); font-weight: 700; line-height: 1.45;\n}\n.fmstr-cmp-rtl-cmp__item--con::before { content: \"\\2717\"; color: var(--c-bad); position: absolute; left: 0; top: 0.05em; font-weight: 700; }\n\n@media (max-width: 920px) {\n.fmstr-cmp-rtl-cmp__grid { grid-template-columns: 1fr; gap: 12px; }\n}\n@media (max-width: 540px) {\n.fmstr-cmp-rtl-cmp { padding: 36px 0; }\n.fmstr-cmp-rtl-cmp__card { padding: 18px 20px; }\n}\n\n\n\u002F* mobile-safety-v2 *\u002F\n.fmstr-cmp-rtl-cmp img, .fmstr-cmp-rtl-cmp table, .fmstr-cmp-rtl-cmp pre, .fmstr-cmp-rtl-cmp iframe, .fmstr-cmp-rtl-cmp video { max-width: 100%; }\n.fmstr-cmp-rtl-cmp > * { min-width: 0; }\n.fmstr-cmp-rtl-cmp [class*='__grid'] > *, .fmstr-cmp-rtl-cmp [class*='__list'] > *, .fmstr-cmp-rtl-cmp [class*='__cards'] > * { min-width: 0; max-width: 100%; }\n@media (max-width: 540px) {\n  .fmstr-cmp-rtl-cmp pre { overflow-x: auto; -webkit-overflow-scrolling: touch; }\n  .fmstr-cmp-rtl-cmp table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }\n}\n\u003C\u002Fstyle>\n\n\u003Csection class=\"fmstr-cmp-rtl-cmp\" aria-labelledby=\"fmstr-cmp-rtl-cmp-h2\">\n\u003Cdiv class=\"fmstr-cmp-rtl-cmp__container\">\n\u003Cdiv class=\"fmstr-cmp-rtl-cmp__head\">\n\u003Ch2 class=\"fmstr-cmp-rtl-cmp__h2\" id=\"fmstr-cmp-rtl-cmp-h2\">Native RTL form builders compared\u003C\u002Fh2>\n\u003Cp class=\"fmstr-cmp-rtl-cmp__intro\">Three builders ship right-to-left support that actually reaches the respondent, not just the form editor. Pick on setup speed and translation depth.\u003C\u002Fp>\n\u003C\u002Fdiv>\n\u003Cdiv class=\"fmstr-cmp-rtl-cmp__grid\">\n\n\u003Cdiv class=\"fmstr-cmp-rtl-cmp__card fmstr-cmp-rtl-cmp__card--featured\">\n\u003Cspan class=\"fmstr-cmp-rtl-cmp__chip\">Best for translation\u003C\u002Fspan>\n\u003Ch3 class=\"fmstr-cmp-rtl-cmp__name\">Formester\u003C\u002Fh3>\n\u003Cp class=\"fmstr-cmp-rtl-cmp__best\">\u003Cstrong>Best for:\u003C\u002Fstrong> One form, many RTL languages, AI does the translation\u003C\u002Fp>\n\u003Chr class=\"fmstr-cmp-rtl-cmp__divider\">\n\u003Cul class=\"fmstr-cmp-rtl-cmp__list\">\n\u003Cli class=\"fmstr-cmp-rtl-cmp__item\">Toggle Multilanguage in Advanced settings, add an RTL language, hit Translate with AI\u003C\u002Fli>\n\u003Cli class=\"fmstr-cmp-rtl-cmp__item\">RTL alignment auto-applies per language\u003C\u002Fli>\n\u003Cli class=\"fmstr-cmp-rtl-cmp__item\">AI translation across \u003Ca href=\"\u002Fai-powered-multilingual-forms\u002F\">180+ languages\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli class=\"fmstr-cmp-rtl-cmp__item\">Built-in respondent language switcher\u003C\u002Fli>\n\u003Cli class=\"fmstr-cmp-rtl-cmp__item fmstr-cmp-rtl-cmp__item--con\">Offline mode and translations sit on paid plans\u003C\u002Fli>\n\u003Cli class=\"fmstr-cmp-rtl-cmp__item fmstr-cmp-rtl-cmp__item--con\">Branding removal is Personal+\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fdiv>\n\n\u003Cdiv class=\"fmstr-cmp-rtl-cmp__card\">\n\u003Cspan class=\"fmstr-cmp-rtl-cmp__chip\">Best for speed\u003C\u002Fspan>\n\u003Ch3 class=\"fmstr-cmp-rtl-cmp__name\">\u003Ca href=\"https:\u002F\u002Ffillout.com\u002Fhelp\u002Fright-to-left-forms\">Fillout\u003C\u002Fa>\u003C\u002Fh3>\n\u003Cp class=\"fmstr-cmp-rtl-cmp__best\">\u003Cstrong>Best for:\u003C\u002Fstrong> A pure layout flip on a form you already wrote\u003C\u002Fp>\n\u003Chr class=\"fmstr-cmp-rtl-cmp__divider\">\n\u003Cul class=\"fmstr-cmp-rtl-cmp__list\">\n\u003Cli class=\"fmstr-cmp-rtl-cmp__item\">Per-form Right-to-left toggle in settings\u003C\u002Fli>\n\u003Cli class=\"fmstr-cmp-rtl-cmp__item\">Quickest setup of the three\u003C\u002Fli>\n\u003Cli class=\"fmstr-cmp-rtl-cmp__item\">Layout flips for every field type\u003C\u002Fli>\n\u003Cli class=\"fmstr-cmp-rtl-cmp__item fmstr-cmp-rtl-cmp__item--con\">RTL is a layout flag, not a translation engine\u003C\u002Fli>\n\u003Cli class=\"fmstr-cmp-rtl-cmp__item fmstr-cmp-rtl-cmp__item--con\">You write the copy in the target language yourself\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fdiv>\n\n\u003Cdiv class=\"fmstr-cmp-rtl-cmp__card\">\n\u003Cspan class=\"fmstr-cmp-rtl-cmp__chip\">Best if you're already in\u003C\u002Fspan>\n\u003Ch3 class=\"fmstr-cmp-rtl-cmp__name\">\u003Ca href=\"https:\u002F\u002Fwww.jotform.com\u002Fhelp\u002Fhow-to-align-your-forms-to-a-right-to-left-direction\u002F\">Jotform\u003C\u002Fa>\u003C\u002Fh3>\n\u003Cp class=\"fmstr-cmp-rtl-cmp__best\">\u003Cstrong>Best for:\u003C\u002Fstrong> Teams deep in Jotform who don't want to migrate\u003C\u002Fp>\n\u003Chr class=\"fmstr-cmp-rtl-cmp__divider\">\n\u003Cul class=\"fmstr-cmp-rtl-cmp__list\">\n\u003Cli class=\"fmstr-cmp-rtl-cmp__item\">Paste a custom CSS block in the Form Designer\u003C\u002Fli>\n\u003Cli class=\"fmstr-cmp-rtl-cmp__item\">Works on any existing form\u003C\u002Fli>\n\u003Cli class=\"fmstr-cmp-rtl-cmp__item\">Covers labels, checkboxes, radios, matrix grids\u003C\u002Fli>\n\u003Cli class=\"fmstr-cmp-rtl-cmp__item fmstr-cmp-rtl-cmp__item--con\">You maintain the CSS by hand\u003C\u002Fli>\n\u003Cli class=\"fmstr-cmp-rtl-cmp__item fmstr-cmp-rtl-cmp__item--con\">Jotform updates can break alignment\u003C\u002Fli>\n\u003Cli class=\"fmstr-cmp-rtl-cmp__item fmstr-cmp-rtl-cmp__item--con\">Not toggle-based\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fdiv>\n\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fsection>\n\n\n\u003Cstyle>\n.fmstr-cmp-rtl-lang a { text-decoration: none !important; }\n.fmstr-cmp-rtl-lang a { color: #5b34b1 !important; }\n.fmstr-cmp-rtl-lang a:hover { text-decoration: underline !important; }\n.fmstr-cmp-rtl-lang {\n--c-card: #ffffff;\n--c-fg-1: #101828; --c-fg-2: #475467; --c-fg-3: #697586;\n--c-violet-500: #7f56d9; --c-violet-600: #6941c6; --c-violet-700: #5b34b1;\n--c-tint: #f7f3ff; --c-edge: #e4d7ff;\n--c-border: #eaecf0;\n--c-row-alt: #fafafa;\n--c-shadow: 0 1px 3px rgba(16,24,40,.05);\nbackground: transparent;\npadding: 48px 0;\nfont-family: inherit;\ncolor: var(--c-fg-1);\ntext-align: left !important;\noverflow-x: hidden;\n}\n.fmstr-cmp-rtl-lang *, .fmstr-cmp-rtl-lang *::before, .fmstr-cmp-rtl-lang *::after { box-sizing: border-box; }\n.fmstr-cmp-rtl-lang > *, .fmstr-cmp-rtl-lang > * > * { min-width: 0; }\n.fmstr-cmp-rtl-lang__container { max-width: 1200px; margin: 0 auto; }\n.fmstr-cmp-rtl-lang__head { margin: 0 0 24px; }\n.fmstr-cmp-rtl-lang__h2 {\nfont-size: clamp(26px, 3vw, 36px); font-weight: 700; line-height: 1.15;\nletter-spacing: -.02em; margin: 0; color: var(--c-fg-1);\n}\n.fmstr-cmp-rtl-lang__intro { color: var(--c-fg-3); font-size: 17px; line-height: 1.6; margin: 14px 0 0; }\n\n.fmstr-cmp-rtl-lang__tablewrap {\nbackground: var(--c-card);\nborder: 1px solid var(--c-border);\nborder-radius: 14px;\nbox-shadow: var(--c-shadow);\noverflow-x: auto;\n}\n.fmstr-cmp-rtl-lang__table {\nwidth: 100%;\nborder-collapse: collapse;\nfont-size: 14.5px;\nline-height: 1.55;\n}\n.fmstr-cmp-rtl-lang__table thead th {\ntext-align: left;\nfont-weight: 700;\nfont-size: 12.5px;\nletter-spacing: 0.06em;\ntext-transform: uppercase;\ncolor: var(--c-violet-700);\nbackground: var(--c-tint);\npadding: 14px 18px;\nborder-bottom: 1px solid var(--c-edge);\nwhite-space: nowrap;\n}\n.fmstr-cmp-rtl-lang__table tbody td {\npadding: 16px 18px;\nvertical-align: top;\ncolor: var(--c-fg-2);\nborder-bottom: 1px solid var(--c-border);\n}\n.fmstr-cmp-rtl-lang__table tbody tr:last-child td { border-bottom: 0; }\n.fmstr-cmp-rtl-lang__table tbody tr:nth-child(even) td { background: var(--c-row-alt); }\n.fmstr-cmp-rtl-lang__table tbody td:first-child {\ncolor: var(--c-fg-1);\nfont-weight: 700;\nwhite-space: nowrap;\n}\n.fmstr-cmp-rtl-lang__script {\nfont-size: 18px;\ncolor: var(--c-fg-1);\nfont-weight: 600;\n}\n.fmstr-cmp-rtl-lang__speakers {\nfont-variant-numeric: tabular-nums;\ncolor: var(--c-fg-1);\nfont-weight: 600;\nwhite-space: nowrap;\n}\n\n.fmstr-cmp-rtl-lang__note {\nfont-size: 15px; line-height: 1.65;\ncolor: var(--c-fg-2); margin: 18px 0 0;\npadding: 14px 18px;\nbackground: var(--c-tint); border: 1px solid var(--c-edge);\nborder-radius: 10px;\n}\n.fmstr-cmp-rtl-lang__note strong { color: var(--c-violet-700); font-weight: 700; }\n.fmstr-cmp-rtl-lang__note code {\nbackground: #ffffff; padding: 2px 6px; border-radius: 6px;\nborder: 1px solid var(--c-border);\nfont-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;\nfont-size: 13.5px;\n}\n\n@media (max-width: 760px) {\n.fmstr-cmp-rtl-lang { padding: 36px 0; }\n.fmstr-cmp-rtl-lang__table { font-size: 13.5px; }\n.fmstr-cmp-rtl-lang__table thead th,\n.fmstr-cmp-rtl-lang__table tbody td { padding: 12px 14px; }\n}\n\n\n\u002F* mobile-safety-v2 *\u002F\n.fmstr-cmp-rtl-lang img, .fmstr-cmp-rtl-lang table, .fmstr-cmp-rtl-lang pre, .fmstr-cmp-rtl-lang iframe, .fmstr-cmp-rtl-lang video { max-width: 100%; }\n.fmstr-cmp-rtl-lang > * { min-width: 0; }\n.fmstr-cmp-rtl-lang [class*='__grid'] > *, .fmstr-cmp-rtl-lang [class*='__list'] > *, .fmstr-cmp-rtl-lang [class*='__cards'] > * { min-width: 0; max-width: 100%; }\n@media (max-width: 540px) {\n  .fmstr-cmp-rtl-lang pre { overflow-x: auto; -webkit-overflow-scrolling: touch; }\n  .fmstr-cmp-rtl-lang table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }\n}\n\u003C\u002Fstyle>\n\n\u003Csection class=\"fmstr-cmp-rtl-lang\" aria-labelledby=\"fmstr-cmp-rtl-lang-h2\">\n\u003Cdiv class=\"fmstr-cmp-rtl-lang__container\">\n\u003Cdiv class=\"fmstr-cmp-rtl-lang__head\">\n\u003Ch2 class=\"fmstr-cmp-rtl-lang__h2\" id=\"fmstr-cmp-rtl-lang-h2\">RTL languages: what you need to know before shipping\u003C\u002Fh2>\n\u003Cp class=\"fmstr-cmp-rtl-lang__intro\">Six RTL scripts cover almost every audience you will hit. Each one has its own font and numeral gotcha that the form builder needs to handle correctly.\u003C\u002Fp>\n\u003C\u002Fdiv>\n\n\u003Cdiv class=\"fmstr-cmp-rtl-lang__tablewrap\">\n\u003Ctable class=\"fmstr-cmp-rtl-lang__table\">\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Language\u003C\u002Fth>\n\u003Cth>Native script\u003C\u002Fth>\n\u003Cth>Speakers (millions)\u003C\u002Fth>\n\u003Cth>Common form use cases\u003C\u002Fth>\n\u003Cth>Key gotcha\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>Arabic\u003C\u002Ftd>\n\u003Ctd>\u003Cspan class=\"fmstr-cmp-rtl-lang__script\">العربية\u003C\u002Fspan>\u003C\u002Ftd>\n\u003Ctd>\u003Cspan class=\"fmstr-cmp-rtl-lang__speakers\">380+\u003C\u002Fspan>\u003C\u002Ftd>\n\u003Ctd>Customer service, government, education, e-commerce checkout in MENA\u003C\u002Ftd>\n\u003Ctd>Numerals are usually Western (0-9), not Eastern Arabic. Set them per field.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Hebrew\u003C\u002Ftd>\n\u003Ctd>\u003Cspan class=\"fmstr-cmp-rtl-lang__script\">עברית\u003C\u002Fspan>\u003C\u002Ftd>\n\u003Ctd>\u003Cspan class=\"fmstr-cmp-rtl-lang__speakers\">9\u003C\u002Fspan>\u003C\u002Ftd>\n\u003Ctd>Israeli public sector, fintech onboarding, NGO surveys\u003C\u002Ftd>\n\u003Ctd>Mixed Hebrew + English content needs \u003Ccode>bdi\u003C\u002Fcode> or \u003Ccode>bdo\u003C\u002Fcode> tags or labels break.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Urdu\u003C\u002Ftd>\n\u003Ctd>\u003Cspan class=\"fmstr-cmp-rtl-lang__script\">اردو\u003C\u002Fspan>\u003C\u002Ftd>\n\u003Ctd>\u003Cspan class=\"fmstr-cmp-rtl-lang__speakers\">230+\u003C\u002Fspan>\u003C\u002Ftd>\n\u003Ctd>Pakistani government forms, Indian academic surveys, NGO outreach\u003C\u002Ftd>\n\u003Ctd>Nastaliq script needs a font that supports it (Noto Nastaliq Urdu is safe).\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Persian (Farsi, Dari)\u003C\u002Ftd>\n\u003Ctd>\u003Cspan class=\"fmstr-cmp-rtl-lang__script\">فارسی\u003C\u002Fspan>\u003C\u002Ftd>\n\u003Ctd>\u003Cspan class=\"fmstr-cmp-rtl-lang__speakers\">110+\u003C\u002Fspan>\u003C\u002Ftd>\n\u003Ctd>Iranian banking, Afghan diaspora services, academic intake\u003C\u002Ftd>\n\u003Ctd>Numerals can be Persian (۰-۹) or Western. Confirm with the audience.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Pashto\u003C\u002Ftd>\n\u003Ctd>\u003Cspan class=\"fmstr-cmp-rtl-lang__script\">پښتو\u003C\u002Fspan>\u003C\u002Ftd>\n\u003Ctd>\u003Cspan class=\"fmstr-cmp-rtl-lang__speakers\">60+\u003C\u002Fspan>\u003C\u002Ftd>\n\u003Ctd>Afghan government, refugee intake, education\u003C\u002Ftd>\n\u003Ctd>Limited font support outside Noto Sans Pashto. Test on mobile.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Sindhi\u003C\u002Ftd>\n\u003Ctd>\u003Cspan class=\"fmstr-cmp-rtl-lang__script\">سنڌي\u003C\u002Fspan>\u003C\u002Ftd>\n\u003Ctd>\u003Cspan class=\"fmstr-cmp-rtl-lang__speakers\">25+\u003C\u002Fspan>\u003C\u002Ftd>\n\u003Ctd>Pakistani provincial forms, Indian academic\u003C\u002Ftd>\n\u003Ctd>Arabic-Sindhi script differs from standard Arabic. Use a Sindhi font.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003C\u002Fdiv>\n\n\u003Cp class=\"fmstr-cmp-rtl-lang__note\">\u003Cstrong>The fix is the same at a layout level:\u003C\u002Fstrong> \u003Ccode>dir=\"rtl\"\u003C\u002Fcode> on the form root and a font that supports the script. The complexity sits downstream in numerals, mixed-direction text, and font availability on mobile.\u003C\u002Fp>\n\n\u003C\u002Fdiv>\n\u003C\u002Fsection>\n\n\n\u003Cstyle>\n.fmstr-cmp-rtl-steps a { text-decoration: none !important; }\n.fmstr-cmp-rtl-steps a { color: #5b34b1 !important; }\n.fmstr-cmp-rtl-steps a:hover { text-decoration: underline !important; }\n.fmstr-cmp-rtl-steps {\n--c-card: #ffffff;\n--c-fg-1: #101828; --c-fg-2: #475467; --c-fg-3: #697586;\n--c-violet-500: #7f56d9; --c-violet-600: #6941c6; --c-violet-700: #5b34b1;\n--c-tint: #f7f3ff; --c-edge: #e4d7ff;\n--c-border: #eaecf0;\n--c-code-bg: #0f172a; --c-code-fg: #e2e8f0;\n--c-shadow: 0 1px 3px rgba(16,24,40,.05);\nbackground: transparent;\npadding: 48px 0;\nfont-family: inherit;\ncolor: var(--c-fg-1);\ntext-align: left !important;\noverflow-x: hidden;\n}\n.fmstr-cmp-rtl-steps *, .fmstr-cmp-rtl-steps *::before, .fmstr-cmp-rtl-steps *::after { box-sizing: border-box; }\n.fmstr-cmp-rtl-steps > *, .fmstr-cmp-rtl-steps > * > * { min-width: 0; }\n.fmstr-cmp-rtl-steps__container { max-width: 1200px; margin: 0 auto; }\n.fmstr-cmp-rtl-steps__block { margin: 0 0 36px; }\n.fmstr-cmp-rtl-steps__block:last-child { margin-bottom: 0; }\n.fmstr-cmp-rtl-steps__head { margin: 0 0 20px; }\n.fmstr-cmp-rtl-steps__eyebrow {\ndisplay: inline-flex; align-items: center;\nfont-size: 11px; font-weight: 700; letter-spacing: 0.08em;\ntext-transform: uppercase; color: var(--c-violet-700) !important;\nbackground: var(--c-tint); border: 1px solid var(--c-edge);\npadding: 4px 10px; border-radius: 9999px; margin-bottom: 10px;\n}\n.fmstr-cmp-rtl-steps__h2 {\nfont-size: clamp(22px, 2.4vw, 28px); font-weight: 700; line-height: 1.2;\nletter-spacing: -.02em; margin: 0; color: var(--c-fg-1);\n}\n.fmstr-cmp-rtl-steps__intro { color: var(--c-fg-3); font-size: 16px; line-height: 1.6; margin: 10px 0 0; }\n.fmstr-cmp-rtl-steps__list {\ndisplay: flex; flex-direction: column; gap: 12px;\nmargin: 0; padding: 0; list-style: none;\n}\n.fmstr-cmp-rtl-steps__item {\nbackground: var(--c-card);\nborder: 1px solid var(--c-border);\nborder-radius: 14px;\npadding: 20px 22px;\nbox-shadow: var(--c-shadow);\ndisplay: flex; gap: 12px;\nalign-items: flex-start;\nmin-width: 0;\n}\n.fmstr-cmp-rtl-steps__num {\nflex-shrink: 0;\nwidth: 26px; line-height: 1; height: 26px; border-radius: 7px;\nbackground: var(--c-tint);\nborder: 1px solid var(--c-edge);\ncolor: var(--c-violet-700) !important;\nfont-weight: 800; font-size: 13px;\ndisplay: inline-flex; align-items: center; justify-content: center;\n}\n.fmstr-cmp-rtl-steps__main { flex: 1; min-width: 0; }\n.fmstr-cmp-rtl-steps__title {\nfont-size: 16.5px; font-weight: 700; line-height: 1.3;\ncolor: var(--c-fg-1); margin: 0 0 6px;\n}\n.fmstr-cmp-rtl-steps__body {\nfont-size: 15px; line-height: 1.6;\ncolor: var(--c-fg-2); margin: 0;\n}\n.fmstr-cmp-rtl-steps__code {\nbackground: var(--c-code-bg);\ncolor: var(--c-code-fg);\nborder-radius: 14px;\npadding: 20px 22px;\nfont-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;\nfont-size: 13.5px;\nline-height: 1.65;\noverflow-x: auto;\nwhite-space: pre;\nmargin: 14px 0 0;\n}\n.fmstr-cmp-rtl-steps__note {\nfont-size: 14.5px; line-height: 1.65;\ncolor: var(--c-fg-2); margin: 14px 0 0;\npadding: 14px 16px;\nbackground: var(--c-tint); border: 1px solid var(--c-edge);\nborder-radius: 10px;\n}\n.fmstr-cmp-rtl-steps__note strong { color: var(--c-violet-700); font-weight: 700; }\n\n@media (max-width: 540px) {\n.fmstr-cmp-rtl-steps { padding: 36px 0; }\n.fmstr-cmp-rtl-steps__item { padding: 18px 20px; gap: 14px; }\n.fmstr-cmp-rtl-steps__num { width: 34px; height: 34px; font-size: 15px; }\n.fmstr-cmp-rtl-steps__title { font-size: 15.5px; }\n.fmstr-cmp-rtl-steps__body { font-size: 14.5px; }\n.fmstr-cmp-rtl-steps__code { font-size: 12.5px; padding: 16px; border-radius: 12px; }\n}\n\n\n\u002F* mobile-safety-v2 *\u002F\n.fmstr-cmp-rtl-steps img, .fmstr-cmp-rtl-steps table, .fmstr-cmp-rtl-steps pre, .fmstr-cmp-rtl-steps iframe, .fmstr-cmp-rtl-steps video { max-width: 100%; }\n.fmstr-cmp-rtl-steps > * { min-width: 0; }\n.fmstr-cmp-rtl-steps [class*='__grid'] > *, .fmstr-cmp-rtl-steps [class*='__list'] > *, .fmstr-cmp-rtl-steps [class*='__cards'] > * { min-width: 0; max-width: 100%; }\n@media (max-width: 540px) {\n  .fmstr-cmp-rtl-steps pre { overflow-x: auto; -webkit-overflow-scrolling: touch; }\n  .fmstr-cmp-rtl-steps table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }\n}\n\n\n\n\u002F* mobile-inline-num *\u002F\n@media (max-width: 540px) {\n  .fmstr-cmp-rtl-steps__item { padding: 18px 16px; gap: 10px; flex-direction: row; align-items: flex-start; }\n  .fmstr-cmp-rtl-steps__num { width: 28px; height: 28px; font-size: 13px; border-radius: 8px; }\n}\n\n\u002F* step-inline-num-restructure *\u002F\n.fmstr-cmp-rtl-steps__item { display: block !important; }\n.fmstr-cmp-rtl-steps__title { display: block; }\n.fmstr-cmp-rtl-steps__num { display: inline-block !important; vertical-align: 2px; margin-right: 8px; padding: 2px 8px; width: auto !important; height: auto !important; border-radius: 6px; font-size: 12.5px !important; line-height: 1.3 !important; }\n@media (max-width: 540px) {\n  .fmstr-cmp-rtl-steps__num { font-size: 11.5px !important; padding: 2px 7px; margin-right: 6px; }\n}\n\u003C\u002Fstyle>\n\n\u003Csection class=\"fmstr-cmp-rtl-steps\" aria-labelledby=\"fmstr-cmp-rtl-steps-h2\">\n\u003Cdiv class=\"fmstr-cmp-rtl-steps__container\">\n\n\u003Cdiv class=\"fmstr-cmp-rtl-steps__block\">\n\u003Cdiv class=\"fmstr-cmp-rtl-steps__head\">\n\u003Cspan class=\"fmstr-cmp-rtl-steps__eyebrow\">Option 1, Google Forms\u003C\u002Fspan>\n\u003Ch2 class=\"fmstr-cmp-rtl-steps__h2\" id=\"fmstr-cmp-rtl-steps-h2\">How to flip Google Forms to RTL (the language workaround)\u003C\u002Fh2>\n\u003Cp class=\"fmstr-cmp-rtl-steps__intro\">Five steps. Flips the editor and your own preview to RTL. Does not change what respondents see.\u003C\u002Fp>\n\u003C\u002Fdiv>\n\u003Col class=\"fmstr-cmp-rtl-steps__list\">\n\n\u003Cli class=\"fmstr-cmp-rtl-steps__item\">\n\u003Ch3 class=\"fmstr-cmp-rtl-steps__title\">\u003Cspan class=\"fmstr-cmp-rtl-steps__num\" aria-hidden=\"true\">1\u003C\u002Fspan>Open Google Forms\u003C\u002Fh3>\n\u003Cp class=\"fmstr-cmp-rtl-steps__body\">Sign in to \u003Ca href=\"https:\u002F\u002Fforms.google.com\">forms.google.com\u003C\u002Fa> with the Google account you build forms with.\u003C\u002Fp>\n\u003C\u002Fli>\n\n\u003Cli class=\"fmstr-cmp-rtl-steps__item\">\n\u003Ch3 class=\"fmstr-cmp-rtl-steps__title\">\u003Cspan class=\"fmstr-cmp-rtl-steps__num\" aria-hidden=\"true\">2\u003C\u002Fspan>Open your Google Account settings\u003C\u002Fh3>\n\u003Cp class=\"fmstr-cmp-rtl-steps__body\">Click your profile icon in the top-right corner of any Google product (Gmail, Drive, Forms).\u003C\u002Fp>\n\u003C\u002Fli>\n\n\u003Cli class=\"fmstr-cmp-rtl-steps__item\">\n\u003Ch3 class=\"fmstr-cmp-rtl-steps__title\">\u003Cspan class=\"fmstr-cmp-rtl-steps__num\" aria-hidden=\"true\">3\u003C\u002Fspan>Go to Personal info, then Language\u003C\u002Fh3>\n\u003Cp class=\"fmstr-cmp-rtl-steps__body\">Click \"Manage your Google Account\", then \"Personal info\", then \"Language\".\u003C\u002Fp>\n\u003C\u002Fli>\n\n\u003Cli class=\"fmstr-cmp-rtl-steps__item\">\n\u003Ch3 class=\"fmstr-cmp-rtl-steps__title\">\u003Cspan class=\"fmstr-cmp-rtl-steps__num\" aria-hidden=\"true\">4\u003C\u002Fspan>Add an RTL language and set it as primary\u003C\u002Fh3>\n\u003Cp class=\"fmstr-cmp-rtl-steps__body\">Pick Arabic, Hebrew, Urdu, or Persian, then set it as your primary language.\u003C\u002Fp>\n\u003C\u002Fli>\n\n\u003Cli class=\"fmstr-cmp-rtl-steps__item\">\n\u003Ch3 class=\"fmstr-cmp-rtl-steps__title\">\u003Cspan class=\"fmstr-cmp-rtl-steps__num\" aria-hidden=\"true\">5\u003C\u002Fspan>Refresh Google Forms\u003C\u002Fh3>\n\u003Cp class=\"fmstr-cmp-rtl-steps__body\">Reload the tab. The editor and every form you open or create is now right-to-left aligned.\u003C\u002Fp>\n\u003C\u002Fli>\n\n\u003C\u002Fol>\n\u003Cp class=\"fmstr-cmp-rtl-steps__note\">\u003Cstrong>Limit:\u003C\u002Fstrong> this only flips your own view. Respondents on default-English Google accounts still see a left-to-right form. There is no per-form RTL setting and no public link parameter that forces direction. Google's help thread \u003Ca href=\"https:\u002F\u002Fsupport.google.com\u002Fdocs\u002Fthread\u002F198216419\">confirms this\u003C\u002Fa>.\u003C\u002Fp>\n\u003C\u002Fdiv>\n\n\u003Cdiv class=\"fmstr-cmp-rtl-steps__block\">\n\u003Cdiv class=\"fmstr-cmp-rtl-steps__head\">\n\u003Cspan class=\"fmstr-cmp-rtl-steps__eyebrow\">Option 2, Formester native\u003C\u002Fspan>\n\u003Ch2 class=\"fmstr-cmp-rtl-steps__h2\">How to make a native RTL form in Formester (4 steps)\u003C\u002Fh2>\n\u003Cp class=\"fmstr-cmp-rtl-steps__intro\">Under two minutes if you start from a finished English form. Every respondent sees the form in their own script, with proper alignment, no CSS.\u003C\u002Fp>\n\u003C\u002Fdiv>\n\u003Col class=\"fmstr-cmp-rtl-steps__list\">\n\n\u003Cli class=\"fmstr-cmp-rtl-steps__item\">\n\u003Ch3 class=\"fmstr-cmp-rtl-steps__title\">\u003Cspan class=\"fmstr-cmp-rtl-steps__num\" aria-hidden=\"true\">1\u003C\u002Fspan>Build your base form in your primary language\u003C\u002Fh3>\n\u003Cp class=\"fmstr-cmp-rtl-steps__body\">Log in to Formester. Start from scratch with the \u003Ca href=\"\u002Fai-form-generator\u002F\">AI form builder\u003C\u002Fa> (paste a prompt or a list of questions) or open an existing form. Build it in whichever language is easiest for you; AI translation handles the rest.\u003C\u002Fp>\n\u003C\u002Fli>\n\n\u003Cli class=\"fmstr-cmp-rtl-steps__item\">\n\u003Ch3 class=\"fmstr-cmp-rtl-steps__title\">\u003Cspan class=\"fmstr-cmp-rtl-steps__num\" aria-hidden=\"true\">2\u003C\u002Fspan>Toggle Multilanguage on\u003C\u002Fh3>\n\u003Cp class=\"fmstr-cmp-rtl-steps__body\">Open the form's Advanced settings panel. Find the Multilanguage toggle and switch it on. This unlocks the language picker and adds a dropdown for respondents.\u003C\u002Fp>\n\u003C\u002Fli>\n\n\u003Cli class=\"fmstr-cmp-rtl-steps__item\">\n\u003Ch3 class=\"fmstr-cmp-rtl-steps__title\">\u003Cspan class=\"fmstr-cmp-rtl-steps__num\" aria-hidden=\"true\">3\u003C\u002Fspan>Add an RTL language and let AI translate\u003C\u002Fh3>\n\u003Cp class=\"fmstr-cmp-rtl-steps__body\">Click Add Language. Pick Arabic, Hebrew, Urdu, Persian, Pashto, or any of the 180+ supported languages. Click Translate with AI. The pass runs across every question, option, placeholder, and helper text. Alignment flips to RTL where it needs to. Review, edit, save.\u003C\u002Fp>\n\u003C\u002Fli>\n\n\u003Cli class=\"fmstr-cmp-rtl-steps__item\">\n\u003Ch3 class=\"fmstr-cmp-rtl-steps__title\">\u003Cspan class=\"fmstr-cmp-rtl-steps__num\" aria-hidden=\"true\">4\u003C\u002Fspan>Preview, test on mobile, share\u003C\u002Fh3>\n\u003Cp class=\"fmstr-cmp-rtl-steps__body\">Hit Preview. Switch to Arabic or Hebrew from the language picker; alignment flips, the submit button moves to the left of the row. Test on mobile (RTL is where most builders fail). Share by public link, QR code, or one of the \u003Ca href=\"\u002Ffeatures\u002Fembed-forms\u002F\">six embed modes\u003C\u002Fa> on your site, WordPress, Webflow, Shopify, Wix, or Canva.\u003C\u002Fp>\n\u003C\u002Fli>\n\n\u003C\u002Fol>\n\u003C\u002Fdiv>\n\n\u003Cdiv class=\"fmstr-cmp-rtl-steps__block\">\n\u003Cdiv class=\"fmstr-cmp-rtl-steps__head\">\n\u003Cspan class=\"fmstr-cmp-rtl-steps__eyebrow\">Option 3, developers\u003C\u002Fspan>\n\u003Ch2 class=\"fmstr-cmp-rtl-steps__h2\">Building your own form? The dir=\"rtl\" snippet\u003C\u002Fh2>\n\u003Cp class=\"fmstr-cmp-rtl-steps__intro\">Plain HTML. The \u003Ca href=\"https:\u002F\u002Fwww.w3.org\u002FInternational\u002Fquestions\u002Fqa-html-dir\">W3C-documented attribute\u003C\u002Fa> is \u003Ccode>dir=\"rtl\"\u003C\u002Fcode> on the form element (or a parent like \u003Ccode>body\u003C\u002Fcode>).\u003C\u002Fp>\n\u003C\u002Fdiv>\n\u003Cpre class=\"fmstr-cmp-rtl-steps__code\">&lt;form dir=\"rtl\" lang=\"ar\"&gt;\n  &lt;label for=\"name\"&gt;الاسم&lt;\u002Flabel&gt;\n  &lt;input type=\"text\" id=\"name\" name=\"name\" \u002F&gt;\n\n  &lt;label for=\"email\"&gt;البريد الإلكتروني&lt;\u002Flabel&gt;\n  &lt;input type=\"email\" id=\"email\" name=\"email\" \u002F&gt;\n\n  &lt;button type=\"submit\"&gt;إرسال&lt;\u002Fbutton&gt;\n&lt;\u002Fform&gt;\u003C\u002Fpre>\n\u003Cp class=\"fmstr-cmp-rtl-steps__note\">\u003Cstrong>The \u003Ccode>lang\u003C\u002Fcode> attribute matters as much as \u003Ccode>dir\u003C\u002Fcode>.\u003C\u002Fstrong> Screen readers, search engines, and font-fallback all read it. Use \u003Ccode>lang=\"ar\"\u003C\u002Fcode> for Arabic, \u003Ccode>lang=\"he\"\u003C\u002Fcode> for Hebrew, \u003Ccode>lang=\"ur\"\u003C\u002Fcode> for Urdu, \u003Ccode>lang=\"fa\"\u003C\u002Fcode> for Persian. For mixed-direction content (a Latin-script brand name inside Arabic body), wrap it in \u003Ccode>&lt;bdi&gt;\u003C\u002Fcode> so the bidirectional algorithm does not flip it incorrectly.\u003C\u002Fp>\n\u003C\u002Fdiv>\n\n\u003C\u002Fdiv>\n\u003C\u002Fsection>\n\n\n\u003Cstyle>\n.fmstr-cmp-tmpl-midcta a { text-decoration: none !important; }\n.fmstr-cmp-tmpl-midcta { background: transparent; padding: 48px 0; font-family: inherit; color: #101828; overflow-x: hidden; }\n.fmstr-cmp-tmpl-midcta *, .fmstr-cmp-tmpl-midcta *::before, .fmstr-cmp-tmpl-midcta *::after { box-sizing: border-box; }\n.fmstr-cmp-tmpl-midcta__container { max-width: 1200px; margin: 0 auto; }\n.fmstr-cmp-tmpl-midcta__card { width: 100%; background: linear-gradient(135deg, #f7f3ff 0%, #faf7ff 100%); border: 1px solid #e4d7ff; border-radius: 18px; padding: 48px 32px; text-align: center; box-shadow: 0 4px 24px rgba(127, 86, 217, 0.08); }\n.fmstr-cmp-tmpl-midcta__inner { max-width: 760px; margin: 0 auto; }\n.fmstr-cmp-tmpl-midcta__eyebrow { display: inline-block; padding: 4px 12px; background: #ffffff; border: 1px solid #e4d7ff; border-radius: 9999px; color: #5b34b1 !important; font-size: 11.5px !important; font-weight: 700 !important; letter-spacing: 0.06em !important; text-transform: uppercase; margin: 0 0 14px !important; }\n.fmstr-cmp-tmpl-midcta__h2 { font-size: clamp(22px, 3vw, 28px) !important; font-weight: 700 !important; line-height: 1.2 !important; letter-spacing: -0.02em !important; margin: 0 0 12px !important; color: #101828 !important; }\n.fmstr-cmp-tmpl-midcta__body { font-size: 16px !important; line-height: 1.55 !important; color: #475467 !important; margin: 0 0 22px !important; }\n.fmstr-cmp-tmpl-midcta__cta { display: inline-flex !important; align-items: center; gap: 8px; background: #7f56d9 !important; color: #ffffff !important; border: 1px solid #7f56d9 !important; padding: 12px 26px !important; border-radius: 9999px !important; font-size: 15px !important; font-weight: 600 !important; text-decoration: none !important; transition: background .15s ease, transform .15s ease; }\n.fmstr-cmp-tmpl-midcta__cta:hover { background: #6941c6 !important; border-color: #6941c6 !important; color: #ffffff !important; text-decoration: none !important; transform: translateY(-1px); }\n.fmstr-cmp-tmpl-midcta__cta::after { content: \"\\2192\"; transition: transform .15s ease; }\n.fmstr-cmp-tmpl-midcta__cta:hover::after { transform: translateX(2px); }\n.fmstr-cmp-tmpl-midcta__strip { font-size: 13px !important; color: #697586 !important; margin: 20px 0 0 !important; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 6px 14px; width: 100%; }\n.fmstr-cmp-tmpl-midcta__strip span { color: #d6c2f7; }\n@media (max-width: 760px) {\n  .fmstr-cmp-tmpl-midcta__card { padding: 36px 22px; }\n}\n@media (max-width: 540px) {\n  .fmstr-cmp-tmpl-midcta { padding: 32px 0; }\n  .fmstr-cmp-tmpl-midcta__card { padding: 26px 16px; border-radius: 14px; }\n  .fmstr-cmp-tmpl-midcta__h2 { font-size: 20px !important; }\n  .fmstr-cmp-tmpl-midcta__body { font-size: 15px !important; }\n  .fmstr-cmp-tmpl-midcta__cta { padding: 11px 22px !important; font-size: 14.5px !important; width: 100%; justify-content: center; }\n  .fmstr-cmp-tmpl-midcta__strip { font-size: 12.5px !important; gap: 4px 10px; }\n}\n\u003C\u002Fstyle>\n\n\u003Csection class=\"fmstr-cmp-tmpl-midcta\" aria-labelledby=\"fmstr-cmp-tmpl-midcta-h2\">\n\u003Cdiv class=\"fmstr-cmp-tmpl-midcta__container\">\n\u003Cdiv class=\"fmstr-cmp-tmpl-midcta__card\">\n\u003Cdiv class=\"fmstr-cmp-tmpl-midcta__inner\">\n\u003Cspan class=\"fmstr-cmp-tmpl-midcta__eyebrow\">Native RTL\u003C\u002Fspan>\n\u003Ch2 class=\"fmstr-cmp-tmpl-midcta__h2\" id=\"fmstr-cmp-tmpl-midcta-h2\">Build RTL forms in Arabic, Hebrew, Urdu and 180 more languages\u003C\u002Fh2>\n\u003Cp class=\"fmstr-cmp-tmpl-midcta__body\">Toggle multilanguage, AI translates and aligns RTL automatically. Built-in language switcher for respondents.\u003C\u002Fp>\n\u003Ca class=\"fmstr-cmp-tmpl-midcta__cta\" href=\"https:\u002F\u002Fapp.formester.com\u002Fusers\u002Fsign_up\" style=\"background: #7f56d9 !important; color: #ffffff !important; border-color: #7f56d9 !important; text-decoration: none !important;\">Start free on Formester\u003C\u002Fa>\n\u003Cp class=\"fmstr-cmp-tmpl-midcta__strip\">Free forever plan\u003Cspan>&bull;\u003C\u002Fspan>No credit card\u003Cspan>&bull;\u003C\u002Fspan>Setup in 2 minutes\u003C\u002Fp>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fsection>\n\n\u003Cstyle>\n\u002F* host-link-override *\u002F\n.fmstr-cmp-rtl-faq a { text-decoration: none !important; }\n.fmstr-cmp-rtl-faq {\n--c-card: #ffffff;\n--c-fg-1: #101828; --c-fg-2: #475467; --c-fg-3: #697586;\n--c-violet-600: #6941c6;\n--c-tint: #f7f3ff; --c-edge: #e4d7ff;\n--c-border: #eaecf0; --c-chip-bg: #f4f4f7;\n--c-shadow: 0 1px 3px rgba(16,24,40,.05);\n\nbackground: transparent; padding: 56px 24px;\nfont-family: inherit;\ncolor: var(--c-fg-1);\ntext-align: left !important; overflow-x: hidden; -webkit-text-size-adjust: 100%;}\n.fmstr-cmp-rtl-faq *, .fmstr-cmp-rtl-faq *::before, .fmstr-cmp-rtl-faq *::after { box-sizing: border-box; }\n.fmstr-cmp-rtl-faq__container { max-width: 1200px; margin: 0 auto; }\n.fmstr-cmp-rtl-faq__h2 { font-size: clamp(26px, 3vw, 36px); font-weight: 700; line-height: 1.15; letter-spacing: -.02em; margin: 0; color: var(--c-fg-1); text-align: left; }\n.fmstr-cmp-rtl-faq__intro { color: var(--c-fg-3); font-size: 17px; line-height: 1.6; margin: 14px 0 28px; text-align: left; }\n.fmstr-cmp-rtl-faq__list { display: flex; flex-direction: column; gap: 12px; }\n.fmstr-cmp-rtl-faq__item {\nbackground: var(--c-card); border: 1px solid var(--c-border);\nborder-radius: 14px; box-shadow: var(--c-shadow); overflow: hidden;\n}\n.fmstr-cmp-rtl-faq__item > summary {\npadding: 18px 22px; cursor: pointer; font-weight: 600; font-size: 16.5px;\ncolor: var(--c-fg-1); display: flex; align-items: center; gap: 14px;\nlist-style: none;\n}\n.fmstr-cmp-rtl-faq__item > summary::-webkit-details-marker { display: none; }\n.fmstr-cmp-rtl-faq__item > summary::before {\ncontent: \"\"; width: 28px; height: 28px; border-radius: 8px; flex-shrink: 0;\nbackground-color: var(--c-chip-bg);\nbackground-image: url(\"data:image\u002Fsvg+xml,%3Csvg xmlns='http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg' width='14' height='14' viewBox='0 0 14 14' fill='none' stroke='%2375747f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 5l4 4 4-4'\u002F%3E%3C\u002Fsvg%3E\");\nbackground-repeat: no-repeat; background-position: center;\ntransition: transform .15s ease, background-color .15s ease;\n}\n.fmstr-cmp-rtl-faq__item[open] > summary::before { transform: rotate(180deg); background-color: var(--c-tint); }\n.fmstr-cmp-rtl-faq__item[open] > summary { color: var(--c-violet-600) !important; }\n.fmstr-cmp-rtl-faq__answer { padding: 0 22px 22px 64px; color: var(--c-fg-2); font-size: 15.5px; line-height: 1.7; }\n.fmstr-cmp-rtl-faq__answer a { color: var(--c-violet-600) !important; text-decoration: none !important; }\n.fmstr-cmp-rtl-faq__answer a:hover { text-decoration: underline !important; }\n.fmstr-cmp-rtl-faq__answer code {\nbackground: var(--c-chip-bg); padding: 2px 6px; border-radius: 6px;\nfont-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;\nfont-size: 13.5px;\n}\n\n@media (max-width: 760px) {\n.fmstr-cmp-rtl-faq { padding: 40px 16px; }\n.fmstr-cmp-rtl-faq__intro { font-size: 15.5px; text-align: left; }\n.fmstr-cmp-rtl-faq__item > summary { padding: 16px 16px; font-size: 15.5px; gap: 12px; }\n.fmstr-cmp-rtl-faq__item > summary::before { width: 26px; height: 26px; }\n.fmstr-cmp-rtl-faq__answer { padding: 0 16px 18px 16px; font-size: 15px; line-height: 1.65; }\n}\n\n\n\u002F* mobile-safety-v2 *\u002F\n.fmstr-cmp-rtl-faq img, .fmstr-cmp-rtl-faq table, .fmstr-cmp-rtl-faq pre, .fmstr-cmp-rtl-faq iframe, .fmstr-cmp-rtl-faq video { max-width: 100%; }\n.fmstr-cmp-rtl-faq > * { min-width: 0; }\n.fmstr-cmp-rtl-faq [class*='__grid'] > *, .fmstr-cmp-rtl-faq [class*='__list'] > *, .fmstr-cmp-rtl-faq [class*='__cards'] > * { min-width: 0; max-width: 100%; }\n@media (max-width: 540px) {\n  .fmstr-cmp-rtl-faq pre { overflow-x: auto; -webkit-overflow-scrolling: touch; }\n  .fmstr-cmp-rtl-faq table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }\n}\n\u003C\u002Fstyle>\n\n\u003Csection class=\"fmstr-cmp-rtl-faq\" aria-labelledby=\"fmstr-cmp-rtl-faq-h2\">\n\u003Cdiv class=\"fmstr-cmp-rtl-faq__container\">\n\u003Ch2 class=\"fmstr-cmp-rtl-faq__h2\" id=\"fmstr-cmp-rtl-faq-h2\">Frequently asked questions\u003C\u002Fh2>\n\u003Cp class=\"fmstr-cmp-rtl-faq__intro\">The most-searched questions on Google Forms RTL, native RTL builders, and mixing English with Arabic, Hebrew, Urdu, or Persian in a single form.\u003C\u002Fp>\n\u003Cdiv class=\"fmstr-cmp-rtl-faq__list\">\n\n\u003Cdetails class=\"fmstr-cmp-rtl-faq__item\">\n\u003Csummary>Does Google Forms officially support right to left?\u003C\u002Fsummary>\n\u003Cdiv class=\"fmstr-cmp-rtl-faq__answer\">No. Google has not shipped an RTL setting. The only workaround is to change your Google account's Forms language to Hebrew or Arabic, which flips the form direction in your own editor and preview. Respondents on default-English Google accounts still see a left-to-right form. The Google help thread confirms this.\u003C\u002Fdiv>\n\u003C\u002Fdetails>\n\n\u003Cdetails class=\"fmstr-cmp-rtl-faq__item\">\n\u003Csummary>What other form builders support RTL natively?\u003C\u002Fsummary>\n\u003Cdiv class=\"fmstr-cmp-rtl-faq__answer\">Three with first-class RTL support: Formester (toggle Multilanguage, pick an RTL language, AI translates and aligns), Fillout (per-form Right-to-left toggle in settings), and Jotform (paste a custom CSS block in the Form Designer). forms.app and Gravity Forms also have RTL support but require setup beyond a single toggle.\u003C\u002Fdiv>\n\u003C\u002Fdetails>\n\n\u003Cdetails class=\"fmstr-cmp-rtl-faq__item\">\n\u003Csummary>How do I add a Hebrew or Arabic form to my website?\u003C\u002Fsummary>\n\u003Cdiv class=\"fmstr-cmp-rtl-faq__answer\">Build the form in a native RTL builder (Formester, Fillout, or Jotform), then embed it. In Formester, click Share, pick one of the six embed modes, and paste the snippet into your site or CMS. The form keeps its RTL alignment inside the iframe.\u003C\u002Fdiv>\n\u003C\u002Fdetails>\n\n\u003Cdetails class=\"fmstr-cmp-rtl-faq__item\">\n\u003Csummary>Can I have one form with both English and Arabic versions?\u003C\u002Fsummary>\n\u003Cdiv class=\"fmstr-cmp-rtl-faq__answer\">Yes, in any builder with a multilanguage feature. Formester ships a language picker that lets the respondent switch between English, Arabic, Hebrew, or any combination of the 180+ supported languages. Google Forms does not have a native multilanguage feature, so you would build separate forms per language.\u003C\u002Fdiv>\n\u003C\u002Fdetails>\n\n\u003Cdetails class=\"fmstr-cmp-rtl-faq__item\">\n\u003Csummary>Does the Google Forms language hack work for respondents too?\u003C\u002Fsummary>\n\u003Cdiv class=\"fmstr-cmp-rtl-faq__answer\">No. The account-language setting is per-Google-account. Each respondent sees the form in their own account's language, not yours. There is no documented way to force RTL on the respondent's view through Google Forms.\u003C\u002Fdiv>\n\u003C\u002Fdetails>\n\n\u003Cdetails class=\"fmstr-cmp-rtl-faq__item\">\n\u003Csummary>Which RTL languages does Formester support?\u003C\u002Fsummary>\n\u003Cdiv class=\"fmstr-cmp-rtl-faq__answer\">Formester's AI translation covers 180+ languages, including Arabic, Hebrew, Urdu, Persian (Farsi and Dari), Pashto, Sindhi, and Kurdish (Sorani). The RTL alignment applies automatically whenever the selected language is RTL.\u003C\u002Fdiv>\n\u003C\u002Fdetails>\n\n\u003Cdetails class=\"fmstr-cmp-rtl-faq__item\">\n\u003Csummary>Will my form work on mobile in RTL?\u003C\u002Fsummary>\n\u003Cdiv class=\"fmstr-cmp-rtl-faq__answer\">Yes, in any builder with native RTL. The Formester layout adjusts at every breakpoint: touch targets, submit button placement, and label alignment all stay correct. The Google Forms workaround works on mobile too, but only for your own view; respondents on default-LTR accounts still see LTR.\u003C\u002Fdiv>\n\u003C\u002Fdetails>\n\n\u003Cdetails class=\"fmstr-cmp-rtl-faq__item\">\n\u003Csummary>Can I use dir=\"rtl\" in HTML to make my own form RTL?\u003C\u002Fsummary>\n\u003Cdiv class=\"fmstr-cmp-rtl-faq__answer\">Yes. Set \u003Ccode>dir=\"rtl\"\u003C\u002Fcode> on the \u003Ccode>form\u003C\u002Fcode> element (or a parent) and pair it with the right \u003Ccode>lang\u003C\u002Fcode> attribute (\u003Ccode>ar\u003C\u002Fcode>, \u003Ccode>he\u003C\u002Fcode>, \u003Ccode>ur\u003C\u002Fcode>, \u003Ccode>fa\u003C\u002Fcode>). The W3C documentation covers edge cases like mixed-direction content (use \u003Ccode>&lt;bdi&gt;\u003C\u002Fcode> for Latin-script names inside an RTL body).\u003C\u002Fdiv>\n\u003C\u002Fdetails>\n\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fsection>\n\n\n\u003Cstyle>\n\u002F* host-link-override *\u002F\n.fmstr-cmp-rtl-rel a { text-decoration: none !important; }\n.fmstr-cmp-rtl-rel {\n--c-card: #ffffff;\n--c-fg-1: #101828; --c-fg-2: #475467; --c-fg-3: #697586;\n--c-violet-500: #7f56d9; --c-violet-600: #6941c6;\n--c-tint: #f7f3ff; --c-edge: #e4d7ff;\n--c-border: #eaecf0;\n--c-shadow: 0 4px 20px rgba(16,24,40,.06);\n\nbackground: transparent;\npadding: 56px 24px;\nfont-family: inherit;\ncolor: var(--c-fg-1);\ntext-align: left !important; overflow-x: hidden; -webkit-text-size-adjust: 100%;}\n.fmstr-cmp-rtl-rel *, .fmstr-cmp-rtl-rel *::before, .fmstr-cmp-rtl-rel *::after { box-sizing: border-box; }\n.fmstr-cmp-rtl-rel__container { max-width: 1200px; margin: 0 auto; }\n.fmstr-cmp-rtl-rel__head { margin: 0 0 28px; text-align: left; }\n.fmstr-cmp-rtl-rel__h2 { font-size: clamp(26px, 3vw, 36px); font-weight: 700; line-height: 1.15; letter-spacing: -.02em; margin: 0; color: var(--c-fg-1); text-align: left; }\n.fmstr-cmp-rtl-rel__intro { color: var(--c-fg-3); font-size: 17px; line-height: 1.6; margin: 14px 0 0; text-align: left; }\n\n.fmstr-cmp-rtl-rel__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }\n.fmstr-cmp-rtl-rel__card {\nbackground: var(--c-card); border: 1px solid var(--c-border);\nborder-radius: 14px; padding: 22px 24px; display: flex; flex-direction: column; gap: 8px;\ntext-decoration: none !important; color: inherit !important; transition: all .15s ease;\nposition: relative;\n}\n.fmstr-cmp-rtl-rel__card:hover { border-color: var(--c-edge); box-shadow: var(--c-shadow); transform: translateY(-1px); }\n.fmstr-cmp-rtl-rel__chip {\ndisplay: inline-block; padding: 3px 10px; border-radius: 9999px;\nbackground: var(--c-tint); border: 1px solid var(--c-edge);\ncolor: var(--c-violet-600) !important; font-size: 11.5px; font-weight: 600; letter-spacing: .02em;\ntext-transform: uppercase; align-self: flex-start;\nmargin-bottom: 2px;\n}\n.fmstr-cmp-rtl-rel__title {\nfont-size: 17px; font-weight: 700; color: var(--c-fg-1); margin: 0; line-height: 1.3; text-align: left; }\n.fmstr-cmp-rtl-rel__body { font-size: 14.5px; line-height: 1.55; color: var(--c-fg-2); margin: 0; }\n.fmstr-cmp-rtl-rel__arrow {\nmargin-top: 6px; color: var(--c-violet-600) !important; font-size: 14px; font-weight: 600;\ndisplay: inline-flex; align-items: center; gap: 6px;\n}\n.fmstr-cmp-rtl-rel__arrow::after {\ncontent: \"\\2192\"; transition: transform .15s ease; display: inline-block;\n}\n.fmstr-cmp-rtl-rel__card:hover .fmstr-cmp-rtl-rel__arrow::after { transform: translateX(3px); }\n\n@media (max-width: 540px) {\n.fmstr-cmp-rtl-rel { padding: 40px 16px; }\n.fmstr-cmp-rtl-rel__grid { grid-template-columns: 1fr; gap: 12px; }\n.fmstr-cmp-rtl-rel__card { padding: 20px 22px; }\n}\n\n\n\u002F* mobile-safety-v2 *\u002F\n.fmstr-cmp-rtl-rel img, .fmstr-cmp-rtl-rel table, .fmstr-cmp-rtl-rel pre, .fmstr-cmp-rtl-rel iframe, .fmstr-cmp-rtl-rel video { max-width: 100%; }\n.fmstr-cmp-rtl-rel > * { min-width: 0; }\n.fmstr-cmp-rtl-rel [class*='__grid'] > *, .fmstr-cmp-rtl-rel [class*='__list'] > *, .fmstr-cmp-rtl-rel [class*='__cards'] > * { min-width: 0; max-width: 100%; }\n@media (max-width: 540px) {\n  .fmstr-cmp-rtl-rel pre { overflow-x: auto; -webkit-overflow-scrolling: touch; }\n  .fmstr-cmp-rtl-rel table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }\n}\n\u003C\u002Fstyle>\n\n\u003Csection class=\"fmstr-cmp-rtl-rel\" aria-labelledby=\"fmstr-cmp-rtl-rel-h2\">\n\u003Cdiv class=\"fmstr-cmp-rtl-rel__container\">\n\u003Cdiv class=\"fmstr-cmp-rtl-rel__head\">\n\u003Ch2 class=\"fmstr-cmp-rtl-rel__h2\" id=\"fmstr-cmp-rtl-rel-h2\">Keep reading\u003C\u002Fh2>\n\u003Cp class=\"fmstr-cmp-rtl-rel__intro\">Sister guides on multilingual forms, Google Forms alternatives, and embedding forms across the stack.\u003C\u002Fp>\n\u003C\u002Fdiv>\n\u003Cdiv class=\"fmstr-cmp-rtl-rel__grid\">\n\n\u003Ca class=\"fmstr-cmp-rtl-rel__card\" href=\"\u002Fai-powered-multilingual-forms\u002F\">\n\u003Cspan class=\"fmstr-cmp-rtl-rel__chip\">Feature page\u003C\u002Fspan>\n\u003Ch3 class=\"fmstr-cmp-rtl-rel__title\">AI-powered multilingual forms (180+ languages)\u003C\u002Fh3>\n\u003Cp class=\"fmstr-cmp-rtl-rel__body\">The full breakdown of how Formester's translation pass works, every supported language, and the language switcher respondents see.\u003C\u002Fp>\n\u003Cspan class=\"fmstr-cmp-rtl-rel__arrow\">Read the guide\u003C\u002Fspan>\n\u003C\u002Fa>\n\n\u003Ca class=\"fmstr-cmp-rtl-rel__card\" href=\"\u002Fblog\u002Fwhy-formester-is-the-best-google-forms-alternative\u002F\">\n\u003Cspan class=\"fmstr-cmp-rtl-rel__chip\">Switching guide\u003C\u002Fspan>\n\u003Ch3 class=\"fmstr-cmp-rtl-rel__title\">Google Forms alternatives\u003C\u002Fh3>\n\u003Cp class=\"fmstr-cmp-rtl-rel__body\">Side-by-side comparison of the builders worth switching to when Google Forms falls short on RTL, branding, conditional logic, or payments.\u003C\u002Fp>\n\u003Cspan class=\"fmstr-cmp-rtl-rel__arrow\">Compare builders\u003C\u002Fspan>\n\u003C\u002Fa>\n\n\u003Ca class=\"fmstr-cmp-rtl-rel__card\" href=\"\u002Fblog\u002Fhow-to-add-conditional-questions-in-google-forms\u002F\">\n\u003Cspan class=\"fmstr-cmp-rtl-rel__chip\">Google Forms cluster\u003C\u002Fspan>\n\u003Ch3 class=\"fmstr-cmp-rtl-rel__title\">How to add conditional logic in Google Forms\u003C\u002Fh3>\n\u003Cp class=\"fmstr-cmp-rtl-rel__body\">Walk-through for branching a Google Form by answer, plus where the section-based logic hits its limits.\u003C\u002Fp>\n\u003Cspan class=\"fmstr-cmp-rtl-rel__arrow\">Read the tutorial\u003C\u002Fspan>\n\u003C\u002Fa>\n\n\u003Ca class=\"fmstr-cmp-rtl-rel__card\" href=\"\u002Fblog\u002Fhow-to-embed-forms-in-wix-studio\u002F\">\n\u003Cspan class=\"fmstr-cmp-rtl-rel__chip\">Embed guide\u003C\u002Fspan>\n\u003Ch3 class=\"fmstr-cmp-rtl-rel__title\">How to embed forms in Wix, WordPress, and Webflow\u003C\u002Fh3>\n\u003Cp class=\"fmstr-cmp-rtl-rel__body\">Six embed modes (inline, popup, sidebar, side tab, popover, fullscreen), what each one does, and which one fits your page.\u003C\u002Fp>\n\u003Cspan class=\"fmstr-cmp-rtl-rel__arrow\">Read the guide\u003C\u002Fspan>\n\u003C\u002Fa>\n\n\u003Ca class=\"fmstr-cmp-rtl-rel__card\" href=\"\u002Ffeatures\u002Fconditional-logic\u002F\">\n\u003Cspan class=\"fmstr-cmp-rtl-rel__chip\">Feature page\u003C\u002Fspan>\n\u003Ch3 class=\"fmstr-cmp-rtl-rel__title\">Conditional logic in Formester\u003C\u002Fh3>\n\u003Cp class=\"fmstr-cmp-rtl-rel__body\">Show or hide sections based on the language a respondent picks, then route follow-ups to the right team.\u003C\u002Fp>\n\u003Cspan class=\"fmstr-cmp-rtl-rel__arrow\">See how it works\u003C\u002Fspan>\n\u003C\u002Fa>\n\n\u003Ca class=\"fmstr-cmp-rtl-rel__card\" href=\"\u002Ffeatures\u002Fautoresponder-email\u002F\">\n\u003Cspan class=\"fmstr-cmp-rtl-rel__chip\">Feature page\u003C\u002Fspan>\n\u003Ch3 class=\"fmstr-cmp-rtl-rel__title\">Autoresponder emails\u003C\u002Fh3>\n\u003Cp class=\"fmstr-cmp-rtl-rel__body\">Send the confirmation, receipt, or follow-up in the same language the respondent filled the form in.\u003C\u002Fp>\n\u003Cspan class=\"fmstr-cmp-rtl-rel__arrow\">See how it works\u003C\u002Fspan>\n\u003C\u002Fa>\n\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fsection>\n\n\n",1214,630,{"text":138},"9 min read",[140,160,179,198],{"title":141,"author":142,"authorImage":8,"authorProfile":143,"coverImg":144,"coverImgAlt":145,"createdAt":146,"description":147,"featured":14,"jsonld":148,"keywords":149,"metaDescription":147,"metaImage":150,"metaTitle":151,"publishedAt":152,"slug":153,"updatedAt":154,"__hash__":155,"body":156,"id":157,"coverImgWidth":135,"coverImgHeight":136,"readingStats":158},"Automate Expense Reimbursement with Smart Online Forms","Harish Kumar","https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Fharish-kumar2424\u002F","https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002FHow_to_Make_User_Research_Survey_56_b194e46254.png","a blog post cover about automating expense reimbursement ","2025-12-22T02:18:01.378Z","Automate your expense reimbursement process with smart forms. Track submissions, approvals, and payments efficiently while reducing errors and delays.",[],"expense reimbursement, \nexpense reimbursement form,\nexpense reimbursement automation,",[],"How to Automate Expense Reimbursement With Online Forms?","2025-12-22T02:18:06.946Z","automate-expense-reimbursement-with-forms","2026-01-28T04:50:43.507Z","08a8bs2ayyZOWJq_2l8XOYdnrXPTu6E0VowMxC77tVg","![a blog post cover about automating expense reimbursement ](https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002FHow_to_Make_User_Research_Survey_56_b194e46254.png)\nExpense reimbursement is an essential process for any organization, but it can be time-consuming and error-prone when handled manually. Employees submit paper forms or spreadsheets, managers follow up via emails, and finance teams struggle to track approvals and payments. Delays, lost receipts, and missed submissions are common problems.\n\nAutomated **[expense reimbursement forms](\u002Ftemplates\u002Fcategories\u002Femployee-management\u002F)** solve these challenges. By digitizing the process and adding automation, you can streamline submissions, approvals, and tracking, making the workflow faster, more accurate, and fully transparent.\n\n## Manual vs Automated Expense Reimbursement\n\n\u003Ctable style=\"width:100%; border-collapse: collapse; font-family: Arial, sans-serif; background-color: white;\">\n  \u003Cthead>\n    \u003Ctr style=\"background-color: #6a0dad; color: white; text-align: left;\">\n      \u003Cth style=\"padding: 10px; border: 1px solid #ddd;\">Manual Reimbursement\u003C\u002Fth>\n      \u003Cth style=\"padding: 10px; border: 1px solid #ddd;\">Automated Forms\u003C\u002Fth>\n    \u003C\u002Ftr>\n  \u003C\u002Fthead>\n  \u003Ctbody>\n    \u003Ctr>\n      \u003Ctd style=\"padding: 10px; border: 1px solid #ddd;\">Involves paper or spreadsheet forms\u003C\u002Ftd>\n      \u003Ctd style=\"padding: 10px; border: 1px solid #ddd;\">Employees submit expenses online\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd style=\"padding: 10px; border: 1px solid #ddd;\">Emailing or printing forms\u003C\u002Ftd>\n      \u003Ctd style=\"padding: 10px; border: 1px solid #ddd;\">Validation rules prevent errors\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd style=\"padding: 10px; border: 1px solid #ddd;\">Waiting for managers and finance teams to review\u003C\u002Ftd>\n      \u003Ctd style=\"padding: 10px; border: 1px solid #ddd;\">Notifications alert managers and finance teams\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd style=\"padding: 10px; border: 1px solid #ddd;\">Lost or unclear receipts\u003C\u002Ftd>\n      \u003Ctd style=\"padding: 10px; border: 1px solid #ddd;\">Automatic receipt verification \u002F clarity checks\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd style=\"padding: 10px; border: 1px solid #ddd;\">Delayed approvals\u003C\u002Ftd>\n      \u003Ctd style=\"padding: 10px; border: 1px solid #ddd;\">Instant manager notifications upon submission\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd style=\"padding: 10px; border: 1px solid #ddd;\">Confusion over submission status\u003C\u002Ftd>\n      \u003Ctd style=\"padding: 10px; border: 1px solid #ddd;\">Real-time status tracking for submissions\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd style=\"padding: 10px; border: 1px solid #ddd;\">Difficulty tracking workflow progress\u003C\u002Ftd>\n      \u003Ctd style=\"padding: 10px; border: 1px solid #ddd;\">Partial submission tracking for progress monitoring\u003C\u002Ftd>\n    \u003C\u002Ftr>\n  \u003C\u002Ftbody>\n\u003C\u002Ftable>\n\n### Creating the Expense Reimbursement Form\n![a screenshot of ai form builder](https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002Fa_screenshot_of_ai_form_builder_c3d709b26a.png)\n\nStart by building your form. Using Formester’s **[AI Form Generator](\u002Fai-form-generator\u002F)**, you can quickly create a professional expense reimbursement form.\n\n### Important steps:\n\n- **Add essential fields:** employee name, department, expense date, expense type, amount, payment method, and receipt upload.\n\n\n- Set up validation rules: mark fields as required, and set amount limits.\n\n\n- Configure **[email validation](\u002Ffeatures\u002Femail-verification\u002F)** so employees enter correct addresses for notifications.\n\n\n- Test the form to ensure all fields and validations work as expected.\n\n\nWith these steps, your form is ready for employees to submit expense requests confidently.\n\n### Sharing or Embedding the Form\n![a screenshot of form embedding options in formester](https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002Fa_screenshot_of_form_embedding_options_in_formester_2ece230a58.png)\nOnce your form is ready, share it with employees effectively:\n\n- **[Generate a unique submission URL](\u002Ffeatures\u002Fgenerate-unique-form-submission-url-for-each-respondent\u002F)** for each employee to track submissions individually.\n\n- Partial submission tracking lets you monitor progress, so you know who has started, completed, or abandoned a request.\n\n\n- **[Embed the form](\u002Ffeatures\u002Fembed-forms\u002F)** on an internal portal or intranet for easy access.\n\nThis ensures that managers and finance teams can view submission progress without sending constant reminders.\n\n### Manager Approval\n\nManager review is the first approval stage in the workflow. This is wow the automation will work:\n\n- When a new submission is created, managers receive a notification automatically.\n\n- After reviewing the submission, managers can update the form inline to approve or request corrections.\n\n\n### How to set this up in Make:\n![a screenshot of formester form webhook integration](https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002Fa_screenshot_of_formester_form_webhook_integration_4860c95cc7.png)\n\n- Open Make and create a new scenario.\n\n- Add a webhook module, copy the **[webhook URL](\u002Fblog\u002Fhow-to-use-webhooks-in-formester\u002F)**.\n\n- **Go back to Formester** → **Automate** → **Webhooks**, create a new webhook, paste the URL, and select submission created. Save it.\n\n- Submit a test submission in Formester.\n\n- Go back to Make, add Gmail or Slack as a new app, and configure the notification to managers. Add recipients as needed.\n\nTo allow managers to approve, invite them as **[team members in Formester](\u002Ffeatures\u002Fcollaborative-forms\u002F)**: go to **Teams → Send Invite**. Managers can now access the organization and approve submissions. This will make sure that the manager approval process is fast, traceable, and fully automated.\n\n### Finance Team Approval\n\nOnce the manager approves, the finance team needs to verify and process the reimbursement. This is how the automation will work:\n\n- Upon an update from the manager, the finance team receives a notification.\n\n- Finance verifies receipts, checks tax and budget compliance, and marks the expense ready for payroll.\n\n\n### How to set this up in Make:\n![a screenshot of make workflow](https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002Fa_screenshot_of_make_workflow_1818b3eb05.png)\n\n- Create a new webhook in Make and copy the URL.\n\n- In Formester, create a new webhook, paste the URL, and select **submission.updated.** Save it.\n\n- Make an edit to the test submission to trigger the workflow.\n\n- In Make, add Gmail or Slack as the notification app.\n\n- Add a filter between the webhook and notification module.\n\n**Condition**: Manager Review column contains verified. This ensures finance is notified only when the manager has approved.\n\nTo prevent multiple notifications for the same submission, add a Sleep (delay) module after the filter. Set the delay to **300 seconds (5 minutes)**. You can clone this delay if needed for further staging. This setup will make sure that the finance team is notified only when necessary and prevents duplicate alerts.\n\n### Conclusion\n\n**By automating expense reimbursement:**\n\n- Approvals happen faster at both the manager and finance levels.\n\n- Errors and lost receipts are minimized.\n\n- Submission progress is tracked in real time.\n\n- Manual follow-ups are eliminated, saving time and effort.\n\n\n**Next steps:**\n- Implement automated expense forms using Formester.\n\n- Configure Make to handle manager and finance notifications and approvals.\n\n- Monitor and optimize workflow rules to ensure smooth reimbursement processes.\n\n\n**Automation transforms expense reimbursement** into a transparent, efficient, and reliable workflow for employees, managers, and finance teams.\n\n","blog\u002Fblog\u002Fautomate-expense-reimbursement-with-forms.md",{"text":159},"4 min read",{"title":161,"author":142,"authorImage":8,"authorProfile":143,"coverImg":162,"coverImgAlt":163,"createdAt":164,"description":165,"featured":14,"jsonld":166,"keywords":167,"metaDescription":168,"metaImage":169,"metaTitle":170,"publishedAt":171,"slug":172,"updatedAt":173,"__hash__":174,"body":175,"id":176,"coverImgWidth":135,"coverImgHeight":136,"readingStats":177},"How to password protect your online forms and surveys","https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002FHow_to_Make_User_Research_Survey_30_226e23d60f.png","a blog post cover about how to password protect online forms and surveys","2025-10-06T05:04:06.330Z"," Secure your online forms and surveys with Formester. Learn how to password protect your form to, control access, and keep submissions private.",[],"password protect forms,\nhow to password protect form,\nprotect forms with password,","Learn how to password protect your form to, control access, and keep submissions private. Secure your online forms and surveys with Formester. ",[],"How to password protect your online forms & surveys","2025-10-06T05:07:52.243Z","how-to-password-protect-online-forms-and-surveys","2025-12-01T12:16:39.376Z","F4ljLv4XE6gQpb2HE8MePwLa491xhIquVHlhI8mk3kA","\u003Ciframe width=\"100%\" height=\"315\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002Fc_PC0lGdwPI?si=KwMRZ14_LY1ChHRw\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C\u002Fiframe>\n\nYou don’t need to worry about unauthorized access to your forms or surveys anymore. With **[Formester](\u002F)**, you can secure any form in seconds using a simple password. \n\nOnly the people you allow can access and submit your forms. This includes private surveys, exclusive content, and sensitive client data.\n\nIn this guide, I will explain how **password protection** works. I will also discuss why it is important. Finally, I will show you how to set it up. This will help you keep your data safe and professional.\n\n### Why Use Password Protection on Forms\nPassword protection adds a secure login page before your form or survey. This means that only respondents with the correct code can access the form. It’s an essential feature for situations such as:\n\n- Private surveys for employees or research participants\n\n- Exclusive content or premium offers for members or clients\n\n- Sensitive data collection, including medical, legal, or financial records\n\n- Client onboarding forms containing confidential information\n\n- Internal audits or confidential feedback within organizations\n\nBy using a password, you control who can see and submit your forms. **This keeps your data safe, private, and professional.**\n\n\n### Step-by-Step Guide to Setting Up Password Protection\nHere’s how to create a password-protected form in Formester:\n\n\n#### 1. Login and Create a Form\nStart by logging in to Formester and creating a new form. To save time, you can use the AI form builder](\u002Fai-form-generator\u002F)** which automatically generates a professional structure.\n\n#### 2. Customize Your Form\nAdjust the form’s design to match your brand. You can also turn on features that make your forms better. These include conditional logic, notifications, and automated responses.\n\n#### 3. Add a Login Page\n\n- Hover over the Add Page button in the bottom left corner.\n\n- Select Login Page. This page will appear before all other pages in your form.\n\n#### 4. Set the Password\n\n- Click on the login page element to open General Properties.\n\n- Customize the labels and description as needed.\n\n- Click Set Password and enter your code.\n\n**Important security note:**\n\n- The password is never stored in Formester’s database.\n\n- Only the admin can create or update it.\n\n- If you forget the password, you can always return, set a new one, and publish. Changes take effect immediately.\n\n#### 5. Share and Publish\nOnce the password is set, publish your form and share it with your respondents. Only users with the **correct password** will be able to access and submit the form.\n\n### Managing Submissions and Analytics\nAfter receiving responses, head to the Results tab to view all submissions and vital form analytics. **This gives you:**\n\n- Control over submissions, preventing unauthorized access\n\n- Protection against duplicate entries or spam\n\n- A secure and professional way to collect information you can trust\n\n### Key Benefits of Password-Protected Forms\nBy using password protection in Formester, you can:\n\n- Ensure privacy and security for sensitive surveys or data collection\n\n- Control access to exclusive content, premium offers, or client onboarding forms\n\n- Prevent spam and duplicate submissions\n\n- Maintain professional standards when collecting confidential information\n\n- Password protection gives you confidence that your data is safe and only accessible to authorized respondents.\n\n### Final Thoughts\nSetting up a password-protected form in Formester is quick, secure, and effective. This feature helps you keep your forms looking professional. It also keeps your data safe. You can use it for **[internal surveys](\u002Ftemplates\u002Fcategories\u002Fsurvey-forms\u002F)**, onboarding clients, or sharing special content.\n\nIf you want to secure your forms today, **[try Formester](https:\u002F\u002Fapp.formester.com\u002Fusers\u002Fsign_up)** and experience the peace of mind that comes with controlled access.\n","blog\u002Fblog\u002Fhow-to-password-protect-online-forms-and-surveys.md",{"text":178},"3 min read",{"title":180,"author":142,"authorImage":8,"authorProfile":143,"coverImg":181,"coverImgAlt":182,"createdAt":183,"description":184,"featured":14,"jsonld":185,"keywords":186,"metaDescription":187,"metaImage":188,"metaTitle":189,"publishedAt":190,"slug":191,"updatedAt":192,"__hash__":193,"body":194,"id":195,"coverImgWidth":135,"coverImgHeight":136,"readingStats":196},"Gravity Forms Alternatives: The Best WordPress Form Plugins in 2025","https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002F5_e3b334d8e1.png","an illustration of best gravity forms alternatives","2025-09-12T05:14:33.996Z","Find the best contact form plugin for your WordPress site. Explore the pros and cons of the top 3 plugins to choose the perfect one for your needs.",[],"best contact form plugin for wordpress,\ncontact form plugin for wordpress,\nbest contact form plugins.","Find the best Gravity Forms alternatives for WordPress, including Formester, WPForms, and more, with AI, workflows, payments, and real-time collaboration.",[],"Best Gravity Forms Alternatives for WordPress in 2025","2025-09-12T05:22:54.146Z","best-gravity-forms-alternatives","2025-09-12T05:22:54.149Z","JO5x-_q91Alhhp5Jp9lLDLbWd_RDhePHPe4GBgDW1JE","![an illustration of best gravity forms alternatives](https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002F5_e3b334d8e1.png)\n\nIf you are a WordPress user, chances are you’ve heard of **Gravity Forms**. It’s one of the most popular WordPress form plugins, trusted for building contact forms, surveys, quizzes, and even advanced workflows. However, while Gravity Forms is powerful, it’s not perfect. Many users find it complex, expensive, and reliant on multiple add-ons to unlock its full potential.\n\nThis is why exploring Gravity Forms alternatives is a smart move. In this guide, we’ll cover the top WordPress form plugins in 2025, including Formester, and show you how they compare in usability, features, integrations, and pricing.\n\n## Why Consider a Gravity Forms Alternative?\n\nGravity Forms is feature-rich, but it comes with challenges that push users to look for alternatives:\n\n- Steep Learning Curve: The interface can be overwhelming for beginners or non-technical users.\n\n- High Costs: Most advanced features, including payment collection, workflows, and conditional logic, require paid add-ons.\n\n- Limited Design Flexibility: While functional, customizing forms to match your brand can be difficult.\n\n- Workflow Limitations: Multi-step forms, approvals, and automation often need third-party integrations.\n\n- Collaboration Challenges: Real-time team collaboration and role management are not natively supported.\n\nIf you’ve faced these challenges, it’s time to explore plugins that make form building faster, smarter, and easier.\n\n### Top Gravity Forms Alternatives for WordPress\n\nHere’s a detailed look at the best alternatives for 2025, including their key features, pros, and cons.\n\n### 1. **[Formester](\u002F)** – The Smart, AI-Powered Form Builder\n![a screenshot formester](https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002Fa_screenshot_formester_20d2152227.png)\n\n**Best for:** Users who want advanced features, real-time collaboration, and flexibility without complex setups.\n\n#### Key Features:\n\n- AI-Powered: Formester suggests form fields and logic based on your inputs, reducing setup time.\n\n- Advanced Conditional Logic: Create forms that dynamically adapt to user responses.\n\n- Multi-Step Forms and Calculations: Build complex workflows with ease.\n\n- Payments & Integrations: Collect payments directly and connect with apps like Slack, Salesforce, or Gmail.\n\n- Real-Time Collaboration: Team members can work together simultaneously with role-based access.\n\n- WordPress Plugin: **[Build forms inside WordPress](\u002Fplugins\u002Fwordpress\u002F)** or externally and embed them anywhere.\n\n#### Pros:\n\n- All-in-one solution without the need for multiple add-ons.\n\n- User-friendly interface combined with powerful features.\n\n- Faster form creation thanks to AI suggestions.\n\n#### Cons:\n\n- Newer than some competitors, so smaller community support.\n\n**Why Choose Formester:** Formester is perfect if you want the power of Gravity Forms with simplicity and speed, along with modern features like **[AI form creator](\u002Fai-form-generator\u002F)** and team collaboration.\n\n\n### 2. WPForms – Beginner-Friendly Form Builder\n![a screenshot of wpforms](https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002Fa_screenshot_of_wpforms_7a6be6f83d.png)\n\n**Best for:** Beginners and small businesses who want simplicity.\n\n#### Key Features:\n\n- Drag-and-drop form builder.\n\n- Pre-built templates for quick setup.\n\n- Conditional logic and payment collection.\n\n- 900+ integrations including email marketing tools.\n\n#### Pros:\n\n- Extremely easy to use.\n\n- Templates help speed up form creation.\n\n- Suitable for simple forms and basic workflows.\n\n#### Cons:\n\n- Advanced workflows and team collaboration require paid add-ons.\n\n- Limited flexibility for complex forms compared to Formester.\n\n**Why Choose WPForms:** If you’re new to WordPress or want simple, reliable forms quickly, WPForms is a strong choice.\n\n\n### 3. Formidable Forms – Advanced Forms for Developers\n![a screenshot formidable forms](https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002Fa_screenshot_formidable_forms_9eb24e1e5d.png)\n\n**Best for:** Developers or advanced users who need custom solutions.\n\n#### Key Features:\n\n- App builder functionality to create complex web apps.\n\n- Advanced calculations and views.\n\n- Custom post types and user registration forms.\n\n- 90+ integrations with apps and services.\n\n#### Pros:\n\n- Extremely flexible for complex workflows.\n\n- Great for creating applications or dynamic content.\n\n#### Cons:\n\n- Steep learning curve.\n\n- More expensive than simpler plugins.\n\n**Why Choose Formidable Forms:** If you are a developer or want highly customized, advanced forms, this plugin gives you complete control.\n\n### 4. Ninja Forms – Simple, Flexible, and Extensible\n![a screenshot ninja forms](https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002Fa_screenshot_ninja_forms_3ba41158b8.png)\n\n**Best for:** Users seeking a balance between simplicity and flexibility.\n\n#### Key Features:\n\n- Drag-and-drop form builder.\n\n- Multi-part forms and conditional logic.\n\n- Numerous add-ons for payments, marketing, and more.\n\n#### Pros:\n\n- Free core plugin available.\n\n- Flexible with add-ons for extended functionality.\n\n- Beginner-friendly interface.\n\n#### Cons:\n\nMany features require paid add-ons, which can get expensive.\n\n**Why Choose Ninja Forms:** Ninja Forms works well if you want flexible forms without overwhelming complexity, but still want the option to extend functionality.\n\n### 5. Fluent Forms – Lightweight and High-Performance\n![a screenshot fluent forms](https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002Fa_screenshot_fluent_forms_e4ddf67639.png)\n\nBest for: Users who value speed and performance.\n\n#### Key Features:\n\n- Lightweight and fast-loading forms.\n\n- Conditional logic and multi-step forms.\n\n- Email marketing and CRM integrations.\n\n- Pre-built templates for easy setup.\n\n#### Pros:\n\n- Excellent performance for high-traffic sites.\n\n- Simple setup for essential form features.\n\n#### Cons:\n\n- Less advanced features compared to Formester for AI suggestions or real-time collaboration.\n\n**Why Choose Fluent Forms:** Fluent Forms is ideal if you want high-performance forms without sacrificing basic functionality.\n\n### When deciding on a Gravity Forms alternative, consider these factors:\n\n- Ease of Use: How quickly can you build forms without technical skills?\n\n- Advanced Features: Conditional logic, multi-step forms, AI suggestions, and workflow automation.\n\n- Team Collaboration: Real-time editing and role-based permissions.\n\n- Integrations & Payments: Ensure the plugin connects seamlessly to payment gateways and apps.\n\n- Performance & Cost: Evaluate speed, reliability, and total cost including add-ons.\n\nFormester excels across these areas, making it a strong choice for teams and businesses looking for powerful yet simple form solutions.\n\n### Conclusion\n\nGravity Forms is a trusted plugin, but it may not meet the needs of everyone. Issues like complex setup, high costs, and limited flexibility push WordPress users to explore alternatives.\n\nFormester stands out as a modern, intelligent alternative:\n\n- AI-powered suggestions make form building faster.\n\n- Advanced logic and workflows handle complex needs.\n\n- Payments and integrations are built-in.\n\n- Real-time collaboration ensures team efficiency.\n\nWordPress plugin allows building forms inside or outside your site.\n\nOther alternatives like **WPForms, Formidable Forms, Ninja Forms, Forminator, and Fluent Forms** have their strengths, but if you want a combination of speed, intelligence, and flexibility, Formester is unmatched.\n\nStart creating smarter, faster, and more efficient forms today with **[Formester](https:\u002F\u002Fapp.formester.com\u002Fusers\u002Fsign_up)**.\n","blog\u002Fblog\u002Fbest-gravity-forms-alternatives.md",{"text":197},"5 min read",{"title":199,"author":142,"authorImage":8,"authorProfile":143,"coverImg":200,"coverImgAlt":201,"createdAt":202,"description":203,"featured":14,"jsonld":204,"keywords":205,"metaDescription":206,"metaImage":207,"metaTitle":208,"publishedAt":209,"slug":210,"updatedAt":211,"__hash__":212,"body":213,"id":214,"coverImgWidth":135,"coverImgHeight":136,"readingStats":215},"Build a Custom Registration Form with CSS","https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002Fcover_of_a_blog_post_about_building_a_custom_registration_form_with_css_f1da1488a1.png","cover of a blog post about building a custom registration form with css","2025-11-24T09:11:01.889Z","Discover how to build a custom registration form with CSS while Formester handles the HTML, backend, storage, and spam protection for you.",[],"build a custom registration form with css,\ncss forms,\nno code forms,\ncss form styling,\nregistration form,\n","Learn how to build a custom registration form with CSS while Formester handles the HTML, backend, storage, and spam protection for you.",[],"How to Build a Custom Registration Form with CSS ?","2025-11-24T09:50:50.573Z","build-a-custom-registration-form-with-css","2025-12-01T12:15:24.662Z","4TFZjDflIt1mBwZ3mGs0pAwTEQm2ei6nREqdhSmvF6A","\u003Ciframe width=\"100%\" height=\"315\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FJ_JmqlCa7jM?si=4HK2X_MzUAkQqi6x\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C\u002Fiframe>\n\n**If you build websites or apps**, you know how long basic tasks can take. A simple **[registration form](\u002Fblog\u002Fhow-to-make-a-registration-form\u002F)** can turn into hours of work. Even when you start with a registration form template, you still adjust layouts, rewrite parts, or connect it with your backend.\n\nYou have to write HTML, fix small layout issues, adjust spacing, test in different screens and many more cumbersome work.\n\nThen you have to handle storage and **[spam protection](\u002Ffeatures\u002Fspam-protection\u002F)**. This gets even harder when the form must handle online registration for events or courses where some form of confirmation must go back to the respondent.\n\n**But you do not have to do all this by hand anymore!**\n\nYou can build a custom registration form just using CSS without writing any HTML code. You can also skip building the backend and spam protection setups.\n\nYou can do all of this inside **[Formester - a no code form builder](\u002F)**.  It will help you create fast and clean forms for any project. In this guide you will learn to build and style registration forms with **your own CSS.** You can also embed these forms on your site in minutes. Finally, you will learn how to manage responses without using any outside tools or backend.\n\n### Why You Should Not Build Forms From Scratch\n\nWhen you code forms yourself, you deal with tiny details that eat your time. You write HTML tags. You adjust columns. You edit form design again and again until it fits your layout.\n\nYou have to set up validation rules, fix errors, create storage systems, add fields like name, email, and phone number by hand. You even rebuild parts that could have been done with ready made **[form templates](\u002Ftemplates\u002F)**.\n\n**This wil slow down your project.** a form builder removes all these tasks. You can simply drag and drop fields, apply built in themes, add custom CSS when you want more control.\n\nYou can also embed the form anywhere with one code snippet. or share the form itself as a **dedicated URL in campaigns**. And you get organized results with zero setup. This will saves you hour and helps you ship your work faster.\n\n### Step 1 - Create Your Registration Form\n![a screenshot of Formester's form builder](https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002Fa_screenshot_of_Formester_s_form_builder_1718efa3f0.png)\n\nInside Formester, click Create Form. You can build the form manually or use the AI form builder. The AI builder lets you type a short prompt like \"**Create a simple course registration form**\", and it builds the full structure for you.\n\nInside a typical course registration form, you need fields like:\n\n- Name\n\n- Email\n\n- Phone number\n\n- Course selection\n\n- Parent or guardian details\n\n- Confirmation checkbox\n\nYou can add all these with a click. No coding. No layout issues. If you want to start quickly, you can choose a **[registration form template](\u002Ftemplates\u002Fcategories\u002Fregistration-forms\u002F)** from the library. Then, you can make it your own online registration page.\n\nIf you want to add more fields later, you can use the AI form editor. You type your request and the editor updates your form instantly.\n\n### Step 2 - Add Custom CSS to Style Your Form\n\n![a screenshot of Formester's css script editor](https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002Fa_screenshot_of_Formester_s_form_buildera_screenshot_of_Formester_s_css_script_editor_ae9c7149dd.png)\nAfter the fields are ready, go to the Design tab. **Scroll down and open the custom CSS editor**. Here you can write your own CSS or paste a script you already have.\n\nTo help you get started, below are some useful CSS examples that you can copy and paste directly into your form.\n\n#### Example 1\nIncrease the font size of all input fields. Use this if you want to improve readability.\n\n```\n.formester-field-wrapper input {\n  font-size: 18px;\n}\n```\n\n#### Example 2\nChange the background color and border of all fields. This gives your form a softer and cleaner look.\n\n```\n.formester-field-wrapper input,\n.formester-field-wrapper select,\n.formester-field-wrapper textarea {\n  background-color: #f8f8f8;\n  border: 1px solid #ddd;\n  padding: 12px;\n  border-radius: 6px;\n}\n```\n\n#### Example 3\nChange the label color and spacing.\n\n```\n.formester-label {\n  color: #333;\n  font-size: 16px;\n  margin-bottom: 6px;\n}\n```\n\n#### Example 4\nAdd rounded corners and a card like form box. You can also wrap the entire form with a clean container effect.\n\n```\n.formester-form-container {\n  padding: 24px;\n  background-color: #ffffff;\n  border-radius: 10px;\n  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);\n}\n```\n\n#### Example 5\nBreathing animation for the submit button. This is one of the most popular effects. It catches the user's eye and improves conversions. Replace the background and text color with the colors you want.\n\n```\n.formester-submit-button {\n  background-color: #7E7171FF;\n  color: #FFFFFFFF;\n  padding: 14px 28px;\n  border: none;\n  border-radius: 6px;\n  font-size: 18px;\n  animation: breathe 2s infinite ease-in-out;\n  cursor: pointer;\n}\n\n@keyframes breathe {\n  0 percent {\n    transform: scale(1);\n  }\n  50 percent {\n    transform: scale(1.05);\n  }\n  100 percent {\n    transform: scale(1);\n  }\n}\n```\n\n#### Example 6\nAdd hover effect to the submit button. Hover effects improve user engagement and makes the button feel more interactive.\n\n```\n.formester-submit-button:hover {\n  opacity: 0.9;\n  transition: 0.3s;\n}\n```\n\n#### Example 7\nMake the form full width on mobile. This improves mobile usability.\n\n```\n@media screen and (max-width: 600px) {\n  .formester-form-container {\n    width: 100 percent;\n    padding: 18px;\n  }\n}\n```\n\n### Step 3 - Use Selector Mode for Faster Styling\n![a screenshot of Formester's css script editor](https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002Fa_screenshot_of_Formester_s_css_script_editor_138381dcf8.png)\n\nIf you do not know which CSS class to target, use Formester’s selector mode. Hover over any field. You will see two choices.\n\n- **Add class selector** - This applies your CSS to all fields of the same type.\n\n- **Add individual selector** - This applies your CSS to only one field.\n\nOnce you choose your selector, the editor adds the CSS for you. You can now edit colors, fonts, spacing, borders, and animations with full control. This level of control helps you create a unique form design that matches your brand, your landing page, or your social media style.\n\n### Step 4 - Design the Form Without CSS\n![a screenshot of Formester's design tab](https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002Fa_screenshot_of_Formester_s_design_tab_6dc47e00ff.png)\n\nIf you do not want to write CSS, you can still design your form completely. Inside the **Design tab**, you can change\n\n- Theme\n\n- Width\n\n- Margins\n\n- Layout\n\n- Colors\n\n- Borders\n\n- Spacing\n\nYou change everything using simple controls. When your design is ready, you can save it inside the branding kit. The branding kit lets you reuse the same design for all future forms. This gives you consistent branding across your site, landing pages, and even social media promotions.\n\n### Step 5 - Embed the Form on Your Website\n![a screenshot of Formester's form embed tab](https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002Fa_screenshot_of_Formester_s_form_embed_tab_9b51c2f9e2.png)\n\nAfter your design is done, go to the Embed tab. You will see many publishing options.\n\nIf you use a website builder like **[WordPress](\u002Fplugins\u002Fwordpress\u002F)**, Webflow, Shopify, or Wix, you can install the Formester app. This lets you embed your form instantly. You can publish event forms, course forms, or any online registration form inside a few clicks.\n\nIf you use a custom site, copy the embed code and paste it into your page. Your form will show up with all your styling.\n\nYou do not need to host the form. You do not need to set up scripts. You only paste one code snippet.\n\n### Step 6 - Manage Registrations\n![a screenshot of Formester's form results tab](https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002Fa_screenshot_of_Formester_s_form_results_tab_45a0c379fd.png)\n\nFormester saves all submissions inside the Results tab. You do not build dashboards. You do not set up storage. You do not install a database.\n\n**You can:**\n\n- Filter responses,\n\n- Sort them by category,\n\n- Mark important entries,\n\n- Export data,\n\n- Send email followups.\n\nThis makes it easy to handle course registrations, event registrations, client forms, and internal requests. You do not need external tools. You handle everything inside one clean dashboard.\n\n### Step 7 - Stop Spam Submissions\n![a screenshot of Formester's AI spam protection](https:\u002F\u002Fformester-strapi.s3.ap-south-1.amazonaws.com\u002Fa_screenshot_of_Formester_s_AI_spam_protection_4c97558c8b.png)\n\nSpam entries waste your time. Formester solves this with advanced, AI powered spam protection. You toggle it on once. It filters bots and suspicious entries without adding heavy captchas.\n\nReal users enjoy a smooth experience. You enjoy clean data.\n\n\n### Final Thoughts\n\nBuilding registration forms should not take hours. You should spend more time on the actual project, not on basic forms. With Formester, you build the form, style it, publish it, and manage responses in minutes.\n\nUse the CSS examples above to shape your form exactly the way you want. Add animations. Change layouts.\n\nAdjust colors. Build clean and modern designs that match your site. You can even turn any design into a reusable template for future online registration campaigns across your site and social media.\n\n\n","blog\u002Fblog\u002Fbuild-a-custom-registration-form-with-css.md",{"text":216},"7 min read",1788439052654]