Skip to content

GTWRegister – GoToWebinar Registration

This WordPress plugin background registers folks for a GoToWebinar right from your WordPress site.

Use the [[gtwregister]] shortcode to register folks for your webinars.

Make sure you pass URL Parameters to this page, i.e. from a registration form. GoToWebinar requires that you supply a first name, last name and an email address.

You can configure your url parameter to GoToWebinar field name mapping in your settings.

To background process a registration, embed the [[gtwregister /]] shortcode in your page or post. To hardcode any field, specify the value using firstnamelastnameemail,phoneservernum (an optional override to the default server number) and gtwid (the ID of your webinar), for example [[gtwregister gtwid="23940324" /]].

Next set your registration form or opt-in thank you page redirection form to go to the page you created. If using an opt-in form with a thank you page redirect, you must enable the option to pass the opt-in information to the thank you page.

Please note that the only fields you can make required on your GoToWebinar configuration are First Name, Last Name and Email. You can include Phone, but it’s best to make it optional unless your opt-in form requires Phone, too. Any other fields marked as “required” in GoToWebinar will cause the registration to fail.

By default, if there is an error, it will be displayed, and if the registration is successful, the success will appear in an HTML comment. You can change these options by passing alongcommentsuccess and commenterror as in commenterror=1 to force errors to be commented or commentsuccess=0 to display that the registration was successful.


  1. Download the GoToWebinar Registration WordPress plugin from inside your WordPress site
  2. Activate
  3. Optionally configure using the Settings link on the plugins page


  1. Use the [[gtwregister]] shortcode to register folks
  2. Make sure you pass URL Parameters to this page, i.e. from a registration form. Required parameters are the First Name, Last Name, Email, GoToWebianrID and optionally a Phone Number. You can specify alternate mappings if needed by going to the settings page.

Things You’ll Need:

  1. A webinar registration/squeeze/optin page
  2. Something to capture opt-ins (like Infusionsoft) if you want to capture the opt-ins outside of GoToWebinar
  3. A thank you page after someone registers
  4. A GoToWebinar setup


Let’s assume you have an opt-in form on your registration page. First, make sure you’re capturing first AND last name as well as the email address. Ask for a phone number, too, if you like.

Configure the opt-in form to go to our CRM and/or ESP if you want to capture the names there, too. (This is a good idea). If not, you can simply have the form submit right to your thank you page.

If you’re using an opt-in form, setup the thank you page redirect to be your thank you page and make sure you enable the option to pass along the contact information from the opt-in to the thank you page.

On your thank you page, either hardcode the GoToWebinarID into your shortcode [[gtwregister gtwid="3493928439"]] or pass it along as one of the parameters from the opt-in form (if people can choose which webinar they want to attend, for example.)

72 thoughts on “GTWRegister – GoToWebinar Registration”

  1. Hello Jeremy

    First, thank you for creating this. One word… AWESOME!

    Just wanted to share something with you which may help other users in the future. First schedule a Webinar and then check the unique registration link generated by GotoWebinar in your ‘My Webinars’ control panel. If your link starts with https://www3… you will need to edit the plugin code ‘url’ by changing it from “” to “”

    To do this in WordPress go to ‘Plugins’ > ‘Editor’ > ‘Select plugin to edit: GoToWebinar Registration’ > then scroll down to line 28 and edit the code ‘url’ => as explained above.

    I needed to do this to get mine working and it’s perfectly now.

    Hope I’m right and if so that this helps!

    1. Oh! I did not realize that some folks were on www3. Thanks for the heads up. A future release will support the option to specify. Cheers! 🙂

    2. Fred, version 0.2 was just released and now offers the option to specify your server number. No code editing required. Look for the update in the plugins section of your site shortly and thanks for the suggestion! 🙂

    3. dear fred. could you help me….!

      [gtwregister servernum=”4″ gtwid=”839100111″ firstname=”rusmana” lastname=”basyar” email=”” phone=”081757865125″ /].

      i put them in my thank-you page. here is the link
      the webinar id is for today. i try go to link, no message error or register. and i cek my email no respons. there some wrong with my script. i think it’should’nt work.

      i put var_dump($result); after $result = curl_exec($ch); here is the output :

      HTTP/1.1 100 Continue HTTP/1.1 200 OK Date: Thu, 10 May 2012 02:33:03 GMT Server: Apache Transfer-Encoding: chunked Content-Type: text/plain; charset=ISO-8859-1 The URL has moved here ”

      here =

    4. Hi,

      I’m having trouble setting this up, but I think it might be because I’m on a different URL altogether?? I’m in the UK, and my urls are https://global.goto.. or like so:

      I’ve tried a few things but nothing doing.. I get this comment:

      but no registrants appear…

      Any ideas?

      The shortcodes I am passing through are like so, and I’m not getting any errors back:

      [gtwregister gtwid=”143-123-019″ firstname=”test” lastname=”test” phone=”123″ email=”xxxxx” /]

    5. I am trying to use your gotowebinar plugin and it won’t work.
      I got required fields errors, then when I set up the pass along the form fields to the thank you page and they went away and the email form went through, so I know it’s working, but I still can’t register

      I think the problem is with the www stuff. There is not one in my test webinar and if I add one I get a page error

      I have tried www1 www www2 www3 www4 and none of them work

    1. Great question, Michael! If you’re using AWeber, you’ll need to change your default variables in your settings.
      Go to the GTW Register link under Settings and add the following variables onto their respective lines: custom phone, email, name (awf_first), name (awf_last). That will grab the right variables from AWeber and pass them onto GoToWebinar. 🙂

        1. Well, there are two errors. The first, about the page not being found might be some other plugin you have which is trying to load a page based on your query string. The thank you page ( ) comes up fine, but as soon as you add on the query string, your WordPress site DID tryi to load a different page. Try disabling your other plugins and do let me know which one it is causing the conflict if this stays an issue though it appears to be fixed now.

          The second, having to do with it saying first name and last name can’t be found, can be adjusted in your GTWRegister settings. Where it has First Name fields and Last Name fields, add the form field names that your form has for first and last name.

          1. I ran into this same problem. The reason that WordPress is showing an error page is due to the query string returned by Aweber. If you configure Aweber to return the form variables, it includes a variable &name=some_name. WordPress apparently will attempt to parse this name as a post name, which does not exist.

            Unfortunately, Aweber gives you no control over the return query, it is everything, or nothing.

            The solution would be to change your redirect url ( in the Aweber form you embed in your site ). NOTE: don’t use the javascript they give you, use the html.

            A possible hack I am considering is DISABLING returning the form variables in Aweber, and dynamically setting the return url in the initial form embedded in my WordPress site.

            However, this is a total hack, using Javascript to rewrite the redirect URL is less than ideal. Unfortunately, I do not have server access.

            A better solution would be to have the form post back to your WordPress, use PHP to build the redirect URL, then send to Aweber.

            Why, oh why must things be more complicated than necessary?

    1. Michael, for some reason, the name parameter is causing problems. If you remove that from the URL, your site will work fine. Any idea what plugins you have installed which might be using that?

  2. Hello Jeremy

    I’ve noticed something else. When your plugin registers my attendees, the timezone is always defaulting to EDT. Does this have to do with:
    “RegistrantTimeZoneKey” => 61

    And if so, is it possible to change it to the default setting I’ve set when creating the Webinar?

    I hope this makes sense and would appreciate your help if possible.

    Thanks and regards

    1. Fred, that does make sense. We’re currently forcing the timezone to be 61 (EST), but could certainly set it to be an option for your blog to set the time zone. If it were a site wide option, would that work for you?

      1. Hi Jeremy

        Sorry for the delay in replying. I’ve set the timezone to 71 (GMT – London) but that means it forces everyone who registers to receive the same time settings in their confirmation emails. If the blog sets the time zone then it would do the same. The ideal setup would give the user the ability to select their time zone… but maybe I’m over complicating this.

        What do you suggest?

        1. Hi Fred. Had the same problem as you, confirmation email showing time in EDT. You mentioned you set timezone key to 71 for London. would you happen to know what the timezone key is for Sydney? I can’t find where you got that number.


          1. You can get the timezones by viewing the source of the regular GoToWebinar page. Where it has the big drop down of all the timezones, you’ll see the number for each one. Use that if you need to. 🙂

    1. Awesome! That’s great, Mike. I may make that an option in future updates. Did you have to change anything else, or just the URL? 🙂

  3. This plugin looks interesting, I would really like to use it on my site. I have been trying to install it and figure out how to use it for about 90 minutes! The explanation above is incredibly hard to understand! A quick video tutorial would be great!

  4. I would echo Oscar’s suggestion. From the descriptions above it seems like exactly what i want, but being somewhat of an idiot, I would love an idiots guide 🙂

  5. Hi Jeremy,

    It looks like this plugin could work for us, but I’m not clear on a couple of things.

    When folks register at GtW for our webinars, we have some custom questions that we ask: What is your ERP system?, etc. Can we use your plugin to include those questions?

    Also, we run two webinars a month, and at this time have webinars set up through the end of the year. It looks to me like we can only use this plugin to handle registration for one webinar on our site at any given time. Is that correct?


    1. Debbie, currently, we don’t support any additional fields beyond First Name, Last Name, Email and Phone. That may come in the future.

      As for multiple webinars, you can totally support that. Just make the webinar choice a form field, like a drop down or radio buttons.

      For example:
      <select name="gtwid">
      <option value="34839838">Tuesday
      <option value="39492039">Wednesday

  6. Hi,

    Great idea for a plugin! I’ve been trying to get it to work, with no success so far. When I display curl_getinfo($ch), I get this back:

    The URL has moved here

    And when I change the url in the attrs array to the above address, I get the same result. Anyone else run into this? Any suggestions would be appreciated.


    1. Rizwan, your opt-in form can have whatever questions you want and since you’re running the opt-ins through your own CRM (like Infusionsoft, etc…) you can capture all that data. Then, GoToWebinar only has to worry about first/last/email/phone since your CRM is doing the heavy lifting.

  7. Hi.

    I am trying to use this plug in with wordpress/optimize press and 1shoppingcart. The problem I am having is that even though 1shoppingcart is ‘posting’ the information after submission (I have varified this by testing with print_r($_post) on a standard PHP page. Nothing is being passed through to the wordpress pages and thus nothing is registered to gotowebinar.

    I am not sure if its wordpress or optimizepress that is stripping the post data but if you have any pointers that would be great.


    1. Chris, we use this on many WP/Optimize Press sites with no problem. It’s likely one of your other plugins that’s messing with the query string. Try disabling the other plugins to see what fixes it and let me know which one it is? Lastly, make sure that the fields 1SC is passing to your site match the fields you have in my plugins config. 🙂

    1. Hi Again,

      Spent some more time trying some other combinations of inputs. I read through the post here and tried the aweber solution above and didn’t have any success with it. I must be missing something simple …

    2. Bill, thanks for the screen shot! Don’t specify the field names in the short code, specify those in your settings. The way you have it now, it’ll overwrite any incoming firstname and lastname.

      In your settings, make sure that you have name_awf_first in the list of firstname fields, and name_awf_last in the list of lastname fields.

      As for it not registering, please assure that the only fields you’re requiring in GoToWebinar are first name, last name, email and maybe phone number. Anything else, and the registration won’t go through. (I checked and you’re okay on this front)

      Is your server number correct in your settings? Looks like this webinar is on server 4. Either set this with servernum=4 in the shortcode, or even better just set it once in your plugin settings. 🙂

      Lastly, the email address you tried to use, per the URL you posted above, has an invalid email address. It’s missing the @. You put in an email address of, which isn’t valid. Try it with a real email address. 🙂

      1. Thanks Jeremy,

        Looks like everything is setup other then my data forwarding. When I go to the thank you page and add and “@” to the email part of the url the plugin in works perfectly.

        Now I’m trying to diagnose why the data getting passed from my aweber optin form page doesn’t pass the “@” with the email the the thank you page.

        Any suggestions why the data is being sent incomplete. I’m using the Aweber settings to forward the data.

        Ps. The theme I’m using is Optimizepress

        Followed these instructions:

        More info about using the data:

        Cheers Man. I’m definitely going to owe you a beer for helping me with this.

        1. I use this with OptimizePress all the time, so that shouldn’t be the issue. I registered from here which took me here. The thank you page, however, wasn’t a valid page.

          A few comments:
          1) Get a better, shorter, domain name 🙂
          2) Change your WP permalink structure to not use the query string (i.e. use /webinar-registration/ instead of /?page=4)
          3) Make sure you have the right thank you page setup

          1. Damn I hoped you weren’t going to look at it while I was messing. There is some issue with the aweber forwarding data and the permalinks.

  8. Okay … Here’s is a tutorial to use GTWRegister with WordPress and Aweber.

    Step 1:

    – Add code to your .htaccess

    Reason: The URL that aweber uses contains the id “name” and as a result you’ll get a 404 error page. WordPress has reserved the id “name” which is why this does not work.

    RewriteEngine On
    RewriteBase /
    # Handle AWeber rewrites
    RewriteCond %{REQUEST_URI} ^/thank-you.* [NC]
    RewriteCond %{QUERY_STRING} ^(.*)\bname\b=(.*)
    RewriteRule ^(.+) /$1?%1firstname=%2 [L,NE,R=302]

    # WPhtc: End Custom htaccess

    Step 2:

    – Install and setup GTWRegister

    – Set your server number and settings …

    First Name Fields: name_awf_first
    Last Name Fields: name_awf_last
    Email Fields: email
    *leave the rest as default upon plugin activation

    Step 3:

    – Setup Permalinks, select custom and set to /%postname%/

    Step 4:

    – Create your thank you page and make sure the permalink is “ or“, if you want a different url just change “thank-you” in the .htaccess code.

    – Add your short code for GTWRegister on this page ie. [gtwregister gtwid=”3493928439″ /]

    Step 5:

    – Make your Aweber code in the web form creator. Select the forward subscriber data when you build the form in Aweber’s web form creator. Also, when you make your form make sure to setup the form with First and Last name.

    – Create your optin page and place your Aweber code

    Thanks Jeremy for all the help. Hope this helps anyone else who is setting up GTWRegister with Awber and WordPress.

    1. Updated:

      So, I realized today that my PAGE 2 was presenting errors to registrations and PAGE 1 was working fine. Strange … but here are the pages below and they should both work.

      Page 1:

      Page 2:

      I’m not sure why PAGE 1 acts differently then, PAGE 2? But it may have something to do with my Optimize-press theme and the way I’m using the optin otion of PAGE 1 and PAGE 2 using “Delay Content” and “Exit Popup”.

      WORKING – Page 1 generates a url on thank you page as: … firstname=Test%20notdelay&name%20awf_first=Test&name%20awf_last=notdelay&submit.x=72&submit.y=73

      NOT WORKING – Page 2 generates a url on thank you page as: … firstname=Test%20Test2&name%20%28awf_first%29=Test&name%20%28awf_last%29=Test2&&submit.x=72&submit.y=73

      Look at how the url’s differentiate:

      “name%20awf_last” (works fine for GTWregister)

      “name%20%28awf_last%29” (does not work with GTWregister)


      “name%20%28awf_last%29” is the encoded version of “name (awf_last)” and the BRACKETS cause the issue on how the plugin picks up the name. Even if you put “name (awf_last)” in the GTW settings.

      The Fix:

      When you copy and paste your raw Aweber code search and remove the brackets from “name (awf_first)” and “name (awf_last)” to look like “name awf_first” and “name awf_last”.

      Example Fix:

      Original Aweber Code –

      First Name:

      Last Name:

      Fix Awber Code:

      First Name:

      Last Name:

      The Catch:

      When you do this, the Awber email will go to the list without the first name and last name data. If I find a fix for this I’ll post it.

      Jeremy: Is there any way to have GTWRegister recognize “name (awf_first)” and “name (awf_last)” as variables?

      GTWRegister Setup:

  9. Hello,

    Do you have a step by step for integrating with aweber? I tried to follow BIll’s instructions but it is not working. The information is not being passed through. I am using Thesis, and have very little on the site plugin wise other than a social plugin for facebook.

  10. I am not a coder so please excuse my ignorance but I can’t get the plugin to work.

    Here is the URL of the webinar I want to register for

    From this I have set in the settings config area

    Sever#: 3
    GoToWebinarID fields: 889552102

    I am using aweber to capture the first name, last name, email and phone number.

    I have entered
    First name Fields: name (awf_first)
    Last name fields: name (awf_last)
    Email Fields: email
    Phone Fields: custom Phone
    Server Num fields: 3

    I cut and past the short code [gtwregister /] in my thank you page and
    in aweber I have set up the variables to be passed on to the thank you
    page (but that stops aweber from finding the page, a wordpress issue of accepting the variables I think)

    When I disable aweber passing on the variables, the thank you page is displayed and the short code displays

    Error: Webinar ID is required. First Name is required. Last Name is required. Email is required.

    What am I doing wrong? Your help is much appreciated

  11. If you’re using aweber, they don’t pass along valid field names, but we can still interpret them. In your GTWRegister settings, [lease add name_awf_first to the list of first name fields and name_awf_last to the list of last name fields. Note the underscores. 🙂

  12. This seems like just what I need, but as a pretty technology-illiterate person, I simply don’t know how to set anything up. The instructions above mean nothing to me. I noticed some requests for a video tutorial-any progress on that? I am using Aweber and Optimize Press. Any “GTW Register for Idiots” help would be greatly appreciated!

  13. Dear Jeremy Shapiro. i have some problem to user GTWRegister, should i have an account in web binar..?

  14. [gtwregister servernum=”4″ gtwid=”839100111″ firstname=”rusmana” lastname=”basyar” email=”” phone=”081757865125″ /].

    i put them in my thank-you page. here is the link
    the webinar id is for today. i try go to link, no message error or register. and i cek my email no respons. there some wrong with my script. i think it’should’nt work.

    i put var_dump($result); after $result = curl_exec($ch); here is the output :

    HTTP/1.1 100 Continue HTTP/1.1 200 OK Date: Thu, 10 May 2012 02:33:03 GMT Server: Apache Transfer-Encoding: chunked Content-Type: text/plain; charset=ISO-8859-1 The URL has moved here ”

    here =

    please.. any body helpme…

  15. really really helpful plugin … just wondering if there may be a chance that you could create a variant for meetingburner? I will be taking a crack at it, but am not (yet) sure that I will be able to mod all the settings. MBurner and GTW appear to submit the data in a similar way, so I am hoping that it is not too much of a tweak.

    thanks for your time

  16. Echoing the comments from “Rusmana” back in May. I am seeing the same behavior from $result, returning ‘The URL has moved here’. This breaks error reporting – perhaps there is some server-side redirect going on at Citrix since the registration seems to work, but no valid error messages are coming back – even if an invalid webinar ID is sent.

    This was discovered as I was trying to add “email errors to administrator” functionality, so that I could fix signup issues in the background without freaking out the registrant. Will happily share back this update if someone can help me understand where the template should be pointing.

  17. Update – looked into this some more – I don’t think it’s possible to extract the main webinar errors (e.g. webinar over, unavailable) from the form submission result. I have added a separate cURL request to the registration page and parsed that to identify errors before sending the form. I have also added an admin email notifier as well so errors can be handled behind the scenes.

    Jeremy – shoot me your email address and I’ll send you my edits in case you want to incorporate them.

    1. Hi Dave,

      If you would be kind enough to share your fix for this it would be greatly appreciated.

      billyshawzy at


  18. Hi Jeremy!

    First off let me say thank you for this awesome plugin.

    I must agree with Bill according to the new GoToWebinar Servers.

    I have just signed up with GTW today. First thing I’ve noticed is that everything looks completely different than it used a few month ago (when I was using the service for the last time).

    GTW support told me that this is the NEW platform they will converting all existing accounts to in the next few weeks.

    One major change is the link structure which will no longer be something like but

    Can you tell whether you will adjust the plugin and when the changes will be availabel.

    Thank’s a bunch


  19. Hey I just thought I would request an update as gotowebinar now has two different kinds of account.

    The old accounts which have webinar ids of 9 digits use the www1 2 or 3 method

    The new accounts have webinar ids of longer than 9 digits. Their registration page is

    Can you please update to accommodate the new accounts.


  20. Really wish I could get this to work. If anyone has any updates or suggestions on how to configure this to work with the changes made by Citrix, please chime in. Thank you!

  21. I am also trying to get this to work with a opt-in form, but I keep getting errors. I have triple checked the field names from 1SC…but it doesn’t seem to be passing them through. Is there a trick with the form code from 1SC?

    Thanks! This is such a cool concept, I hope I can get it to work.

  22. I would love to get this plugin working. But given my level of expertise with wordpress I have been unsuccessful. I have been at this for hours and still have had no luck in getting this working. By any chance are there more detailed instructions or a video available?

  23. Hi — ran into a problem… I updated to the latest Gravity Forms (1.7.12) in order to fix an issue with long URLS, and it seems that it broke GTWRegister — the email submits into Gravity Forms (shows up in “entries”), it redirects and gives me the success message, but it is not showing up in GTW. Any thoughts?


    1. never mind…after I updated Gravity Forms, another person in the company made the Organization and Phone number fields required in GTW without my knowing it. That was what broke the submission.

  24. Did something change on Citrix’s side recently to impact this plugin? A few days ago it was working fine for us and now the registrations aren’t showing up in GoToWebinar for us anymore. As far as we can tell we haven’t changed anything…

Leave a Reply

Your email address will not be published. Required fields are marked *