Legacy Custom Scripting Resources

Important Update to Custom Scripting

The CustomScript Action now supports the LUA programming language. Visit our NEW Lua Scripting Resources!


  1. New accounts (created after October 29, 2018) will only have the option to use Lua in scripts.
  2. As of October 29, 2018 Custom Scripting Actions will default to Lua as the scripting type in the Custom Scripting Action for accounts created before this date. You will be able to switch to the Legacy Custom Scripting; though we highly encourage using Lua.
  3. In the long term, Legacy Custom Scripting Actions will be switched to read-only. The exact date on this is to be determined; we will send notifications well ahead of time.


While Alchemer is one of the most flexible survey tools around, we get requests here and there for customizations that are not available out of the box. This is where JavaScript and Custom Scripting can save the day. If you have scripting chops you can use the JavaScript action or the Custom Scripting action to achieve the survey of your dreams.

Alchemer supports two kinds of scripting in surveys: Custom Scripting and JavaScript. You can add each to your survey by adding the script to either a Custom Script or JavaScript action respectively. 

Alchemer Custom Scripting - This scripting language was created for Alchemer. The syntax is based on PHP and it includes an API (application program interface) for interacting with the survey. You can implement sophisticated, dynamic survey behavior using Custom Scripting. Our library of functions, including many useful PHP functions, are documented here. You can also reference a number of example custom scripts that you should be able to implement with only a few tweaks. 

JavaScript - This a programming language implemented in all browsers. It is used to create websites with sophisticated, interactive behavior. For instance, we use JavaScript for our more fun and interactive question types like the Drag & Drop Ranking question and Sliders. You can leverage JavaScript as well in your surveys though the functions are not documented here. Check out our Working Examples of JavaScript to learn more!