I'm a huge fan of the Thrive Leads plugin for WordPress. I'm an affiliate of Thrive, so the links on this page will earn me a small commission if you click on them and end up making a purchase. That said, I'm a paid user for the entire Thrive family of plugins and utilize them throughout my website.

Creating lightboxes, screen takeovers, and all sorts of lead-generating tools is easier than ever with Thrive Leads.

A short while ago I had the idea to add a Gravity Form to a Thrive Leads lightbox to give my contact page a better user experience. I didn't want to gather an email and a name to drop into my Drip marketing list -- I wanted to actually use a contact form.

When I began tinkering with the two plugins I quickly realized how much CSS and coding knowledge was necessary to customize the look of Gravity Forms. Using Thrive Leads to create forms is so simple and easy because you can use the on-page editor to make changes in real time without having to know any coding.

While tinkering, I discovered a way to use Gravity Forms with the default editor and lead capturing fields of Thrive Leads.

Check out the video below to see me walk you through this simple process.

Step 1
Create a form in Gravity Forms using whatever settings you desire. I like to have mine redirect to a 'Thank You' page so that I can use conversion tracking pixels and tags, as well as provide that user with more information after their submission.

Step 2
Create a Thrive Leads form, whether on a page using a lead generation widget or a Thrive Box. Leave this open in another tab.

Step 3
Go to your Gravity Form you made (open it in another tab) and click 'preview' to see a preview of your form. Right click in one of the fields and click 'Inspect' to see the code of the form. Right click in the code where you see the "<form..."

Integrate Thrive Leads with Gravity Forms

Step 4
Right click on the word "form" and navigate to Copy > Copy Element

Step 5
Go back to the tab with your Thrive Leads form and click on it. In the top left of the Thrive Architect editor, choose "Connect Form to Service", then click HTML Form Connect. Paste in the code you just copied and press continue. NOTE: Set the action variable to empty so that it looks like this: action="" otherwise your validation errors may not work if you set the fields to required in GForm and in Thrive Leads.

Connect Thrive Leads to Gravity Forms

Step 6
Your Thrive Leads form should now automatically update with the form settings of your Gravity Form. You can use Thrive Architect to update the way your form looks. I have more details on that in the video.

Now your Thrive Leads form will not only submit to your Gravity Form, but anything your Gravity Form was configured to do will also execute.

If you have any questions about how to use Thrive Leads with Gravity Forms, feel free to leave a comment below and I'll help you in any way I can.

  • Hi Doug,

    I use Gravity Forms for various different forms on my site.

    I’m now about to start adding some lead magnets / opt-in boxes onto my site.

    Why would I choose Gravity Forms + Thrive, instead of Thrive alone?

    (I use ActiveCampaign)

    Thank you!


    • Hi Grey,

      If you’re just looking to gather a name and email address and feed those into your ActiveCampaign then I don’t see a need for you to use Gravity Forms in conjunction with Thrive Leads for your lead magnets. Just use Thrive Leads and you’re set.

      The main reason for using Thrive Leads with Gravity forms has to do with wanting the functionality of Gravity Forms (integrating APIs, storing leads in the WP database, and all of the other Gravity Form functions like paragraph responses) while still being able to integrate with the Thrive Leads features. One of the biggest reasons I use Thrive Leads with Gravity Forms is to customize how they look.

      I create 10 landing pages a week that all look different from each other, and my CSS skills are weak. Using a drag-and-drop editor like Thrive Leads means I can customize my Gravity Forms to look like just about anything.

  • The main reason for me is the limit of API with ThriveLead. It’s limited to 3 fields: email, name and phone.
    If this is enough for a regular optin form, it is not for Clients’ forms where I want to collect a bit more of information.

    • Hi Thierry,

      I completely agree. That’s why I utilize Thrive Leads with another form processor like Gravity Forms or WPForms. I want all of the flexibility and customization of Thrive Leads (and their features of integrating quickly with email systems and lead magnets) while keeping the robust field options of the form processor.

    • Hi Yibeltal,

      I’m getting this question a lot, so thank you for asking! I will update the post.

      In order to get validation errors to work, I recommend editing the form HTML to remove the “action” variable or leave it empty. I use: action=””.

      If you set the form fields to required in GForm and the Thrive Architect/Leads interface, and empty the action variable, then it should work for you.

      • Hi Doug,
        Thanks for the great tutorial. I found that if I use action=”” I get the WordPress login page as a result. What seems to work for me is to use action=”/” or use the url the gravity form will redirect to upon submission.

        Thanks again

        • Hi Kyle,

          Yeah you need to put something between the quotation amrks. So when using the action=”” you can do something like action=”/thank-you/” to send them to your thank-you page (if that were a page you use). You want to have that be your redirect.

  • Hi Doug,

    I’m currently running hidden forms for my gravity form. These hidden forms are being used to track the referral URLS (this includes Adwords, UTM Parameters etc).

    After integrating it with Thrive Leads, I’m unable to track these referrals. Do you have a potential workaround for this?


    • Hi Bob,

      Hidden fields can throw a wrinkle in things. I’ve had some success adding the hidden fields in manually into the form code, then going into the HTML of the Thrive Lead itself and editing the HTML there to add the hidden field as well. This works to send UTM codes and things like SOURCE to my mail service like Mailchimp.

      Have you tried making sure they’re present as hidden fields in the HTML Form code, and in the HTML of the Thrive Lead/Page itself?

  • Hi Doug,

    Very helpful post – thank you for publishing it.

    I’m curious about how you would handle a text-based confirmation vs. redirecting to a thank-you page. I need the confirmation message to appear within the ThriveBox after the user submits their form. That way, when they dismiss the ThriveBox, they remain on the page where they started.

    In my setup, I’ve got my Gravity Form confirmation settings specified as type “text”. But when I submit an entry via the Thrive Box, I’m redirected to a Gravity Forms preview page displaying the confirmation text rather than seeing that text populate within the Thrive Box.

    Any thoughts?

    • Hi Rob,

      To fix the issue of it redirecting to the gravity forms preview page you just need to remove what’s within the quotations after the action=””.

      You can see an example in this post in Step 4.

      If you’re using a light box you may have success telling it to change states upon completion (using thrive leads), but that’s not something I have tested. Otherwise, you can simply choose the on-page co

      • Hey Doug, having the same issue as Rob here. I’ve tried it a couple of different ways (using Thrive Leads into a Lightbox, and with a Lead Generation block into a content block), and when I submit the gravity form it always redirects to a blank page with the confirmation text I entered. On inspecting the page I can see that the form element is similar to:

    • Hi Rob, did you find a way to resolve this? I’m trying to do exactly the same as you, and regardless of whether I remove ‘action=’ in the code, when I inspect the page and look at the form element it’s added back a form redirection as an action.

  • Hi!

    I tried, but the names inside the boxes disappear, the order changes, for example “accept terms” etc. It does not look the same. Are there any solutions?

    how come it does not work with the shortcode? there is no simpler method?

    Thanks . Thrive Architect (2.0.24) Thrive Lead (2.0.26) GF (

    • Hi Nic,

      Using the shortcode requires your theme’s CSS to be set up properly for Gravity Forms. In most cases, it’s simply not. That’s hwy it doesn’t work well at all, and why it’s even more complicated than using Thrive Leads.

      This method with Thrive Leads allows you to add the names in the boxes, set any order you’d like, and even have term acceptance via a checkbox that’s required. You simply need to copy and paste in the form HTML as shown in the video, then make all of those tweaks with Thrive Leads.

      • Thank u Doug but..I tried, but the names inside the boxes , in thrive lead disappear, the order changes, for example “accept terms” etc. It does not look the same.
        something wrong ?

  • Great video! I have been looking for ways to do this for a long time!

    I hope to use a number of advanced forms (I’m a counselor, so checkboxes and likert scales are really helpful in my use case). I’m having a problem with the order of the GF form fields getting out of order when I paste the code into thrive leads. It’s also not showing the field descriptions, only the placeholder text. Any suggestions?

    Thanks again!

    • The order being shuffled does happen for some reason. You can simply edit the field and drag & drop them into the correct order. I’ll play around with field descriptions to see what I can come up with. I typically don’t use those with Gravity Forms.

      Checkboxes and dropdowns have worked for me in the past, but I have big doubts you’ll get a likert scale to work with Thrive Leads without having a coding background.

  • Does anyone know if I’m able to use GF within a Thrive Lightbox? I own a cleaning company and I want visitors to click on my CTA, then have a GF take over the entire screen like Thrive Lightbox does. I then want the user to input all the info i require and then pass this info onto my booking/quote page.

    I hope this is possible. I using the GF demo, but there’s no way I can test it with Thrive.


    • Hi Akash,

      I regularly create GF forms in lightboxes and have them redirect. In terms of passing along variables, I assume that’s doable but would depend on your booking/quote page.

    • This is a really good question. You may not have noticed this, but you actually can’t add Field Labels above fields (or below them, or do the side) in ANY Thrive Leads / Architect forms. In fact, the only labels you can even use for fields are Placeholders.

      Their HTML form API doesn’t parse any of that HTML we need to use to make it happen. I’m experimenting with a few things and I’ll get back to you if I can make it happen. I might also read out to Thrive support and see what they have to say on the subject. A few people have already posted in in the support forums, but the support has just repeatedly not understood and told them to just edit the placeholder text.

  • Thanks for putting this information out there, it really helped me get through a problem integrating the forms with Thrive Themes.

    One thing I am still having trouble with and thought I would ask is my lightbox seems a little big for mobile devices and it doesn’t scroll well. Have you had success with any larger forms on mobile? My workaround is to remove the buttons on mobile through Thrive Architect and add another button that only shows up on mobile to direct them to a non Thrive Architect page with the original Gravity Form.


    • That’s a UX issue that gets a lot of people. If you use a lightbox with a form, you’re going to struggle with longer forms. I ran into that issue on a site that wasn’t even using Thrive. ? I would recommend you simply don’t use lightboxes for long forms.

  • Wow! I was racking my brain trying to figure out how to integrate Gravity forms with Thrive leads. You saved me!!!
    Thanks so much for the tutorial.

  • Hey there. This is really helpful – I needed it for passing on parameters via query string to the confirmation page.

    However I can’t get it to work that the conversion is being registered by Thrive Leads. Does anyone have an idea what’s wrong? Doug?


    • Hi Phil,

      Can you clarify what you mean by Thrive Leads registering the conversion? Are you referring to the actual Thrive Leads reporting in the backend of WordPress, or the conversion being tracked in Google Analytics?

      • Hi Doug, Thanks for your reply. I’m referring to ThriveLeads reporting the conversion in the backend. This keeps showing “0” even after testing.

        That number is very handy to have for the split testing feature built into ThriveLeads.

    • Hi Robert,

      Chances are you won’t get a recaptcha to work using this method that I’ve shown. You’ll need to custom code that. You may find this works better using Thrive Architect’s native recaptcha integration and the “Thrive Form” – then feed that into the Gravity Forms as shown.

  • Hey Doug, the content is great. But I’m having the issue as described above by Rob and Steve. The form redirects to either a login page for wordpress or the preview page.
    Is there a way around this?

    • Hey Matt –

      When this happens the issue is typically traced back to the “action” variable in the form HTML.

      Take a look at the HTML you’ve put into the HTML form section. Do you see anything that says action=””? Often between those quotes is the URL of your form preview for Gforms. You need to replace what’s in there with nothing (leaving it as action=””) or putting a thank-you page inside the quotes like action=”/thank-you/”

      I worked on this very issue for a client’s site this morning and solved it that way. Let me know if this solves your issue — if not, link me to the page with the form in question and I’ll take a look.

  • This was incredibly helpful! I’d searched high and low for this solution, even reached out to Thrive prior to finding your post, and this is the best solution by far! Thank you for this work around!

  • I have been messaging Thrive Themes to ask if I could populate ActiveCampaign custom fields with Thrive Leads so I could use these forms for multiple applications and haven’t heard back. I am also a GF user and they have a very robust integration with ActiveCampaign, so Thrive Themes is going to get a new customer after watching this. Great stuff man, super helpful. I will definitely be using your affiliate link. You’ve more than earned it.

    • Hi Mike,
      Sadly, I do not think there is unless you plan to do extensive modifications to the HTML which would include CSS — which I’m not even sure would be compatible. Certainly nothing as simple as what I’ve outlined here.

  • Hi Doug
    Thank you for this explanation. That was exactly what I was looking for and I followed your instructions, but it does not seem to look as good if you are using Drop Down, Radio Buttons, Checkboxes, Display Rules, and so on.
    Any suggestions on this?

    • Hi Alain,
      It should work relatively well with things like drop down, radio buttons, and check boxes. There isn’t much you can customize with them, though. My biggest complain is that lack of ability to edit the spacing. Display rules from Gravity Forms are most likely completely void.

      It works great for simple forms, but anything complicated with conditional logic or display rules, etc., will not work well.

  • This is a game changer for anyone using Thrives Leads and Gravity forms. It opens up the world of Gravity forms integrations to Thrive Leads users, thanks so much for the method, I am all over this!

    One little thing that’s been giving me trouble, seeing as you have so much experience combining these two plugins, I was wondering if you know if there is a way to have pre-selected checkboxes.

    I’ve set it up in Gravity Forms to have my checkbox pre-selected and I see checked=”checked” in the html, but it does not register as being checked in the front end of the form or when it is submitted. I searched about a little but didn’t find the solution, any ideas on this Doug?

    • Hi Alexander,

      I haven’t had a lot of luck pre-checking boxes either. Although fairly robust in the front-end design department, Thrive Leads HTML forms lack customization for functionality. For some reason it seems to strip out that pre-checked code.

      I hope you still find this to be a game changer!

  • I have a problem with the form validation. If a user doesn’t enter his e-mail address correctly, he will be redirected to the WordPress login page. He doesn’t issue an error that he has filled out the field incorrectly. (Mandatory field)

    • Hi Dirk and Yeison, sounds like you haven’t set up the action=”link to redirect to” part of the form HTML yet. You’ll need to manually add that for some form processors before validation or even proper redirecting will work.

      • Hi Doug – I too have the same issue… every time it takes them to the WP Login page. Makes no sense. I am trying to not have a redirect, but just say thank you on a lightbox. At this point, I will live with a redirect to a thank you page I can do…but no luck.

        Appreciate a bit more guidance – yes, I have put the action=””.

  • {"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}

    Join Convology Pro

    Get access to all Convology Courses, Workshops, and exclusive community with our all-access-pass called Convology Pro.