Skip to main content Skip to footer

SpreadJS Licensing & FAQ

SpreadJS is Licensed Per Developer and Deployed Hostname

A Developer license is needed for every developer using SpreadJS. In addition, a Deployment license is needed for each separate production hostname SpreadJS is deployed on.

You can purchase both the Developer license and Deployment licenses separately. We also offer a SpreadJS Developer License +  SpreadJS One (1) Annual Hostname Deployment License Bundle which includes one Developer license and one Annual Deployment license. Perpetual Deployment licenses are available by contacting us.sales@mescius.com.

How SpreadJS Licensing Works

Download the free trial and install it.

Buy the SpreadJS developer/hostname bundle and we'll register and send your developer key.

When you're ready to begin distributing your app to a live hostname, the confirmation email directs you to the My Licenses page where you can create the key

SpreadJS Activation

Enter your activation code into the provided link, enter your hostname(s), and it will generate your unique Hostname Deployment License key. You may purchase additional hostnames at the rates here.

SpreadJS Deployment

You're ready to deploy!

How to License SpreadJS in Your Application

With every developer bundle license, you'll receive one distribution license for one hostname (domain), which entitles you to generate a distribution key that will be used in the script code. To deploy to additional hostnames, you can buy packages of additional, renewable distribution licenses by contacting sales, and generate distribution keys for those hostnames. Licenses must be renewed annually, and keys will need to be updated if you deploy a new version of SpreadJS.

The license for SpreadJS is set via script code. This is done by setting the GC.Spread.Sheets.LicenseKey before creating a new Workbook() instance:

GC.Spread.Sheets.LicenseKey = "[your Distribution license key here]";

NOTE: When entering the license key, be sure to paste the entire key exactly how it was provided to you. Typical keys look similar to the following:

  • "Example inc, app1.example.com|app2.example.com, 972138875423714#B0LKsUTWlXVu ....."
  • "Example inc, 972138875423714#B0LKsUTWlXVu..."
  • "972138875423714#B0LKsUTWlXVu..."

Check out the licensing documentation

Watch the Licensing Video

Licensing FAQ

A: Each developer of an application that references SpreadJS code will need an individual developer license. If you have five developers working with SpreadJS, you will need five developer licenses. In this example, you can have up to five unnamed developers working with SpreadJS at the same time. The SpreadJS Developer Bundle includes one developer license and one Deployment license.

For example pricing only:
Company A has (3) developers and deploys their application on (1) hostname. License requirements would be:
SpreadJS Developer License Bundle = $1499
SpreadJS Developer License $999 * 2 = $1998

Company B has (5) developers and application is SaaS, hosted at *.company.com. License requirements would be:
SpreadJS Developer License $999 * 5 = $4995
SpreadJS Single Domain Deployment License = $12499

A: A SpreadJS Deployment license is required when you are ready to deploy your application(s) to internal/external production. The Annual Deployment license must renewed every year to continue using SpreadJS in your application(s). Perpetual Deployment licenses are also available.

The Deployment License key is a character string that authorizes a deployed application to use SpreadJS. You can generate a Deployment Key using your account on our website. To make a Deployment Key, simply add the hostname(s) to be authorized and generate the key. Then you'll apply the key to your app as listed above. You can generate as many keys that you are licensed for.

A: SpreadJS Deployment is licensed by hostname or application and each separate hostname will need its own separate deployment license. The deployment license is created and assigned specifically for the hostname you provide.

Examples of a single host name include: www.mycompany.com/dir1/xxxwww.mycompany.com/dir2/xxx, and www.mycompany.com/dir3/dir3a/xxx

Examples of multiple hostnames include: www.mycompany.comdemos.mycompany.comacct1.mycompany.comacct2.mycompany.comwww.mycompany.jp. These are all different hostnames. In this example, a total of five Deployment licenses will be needed.

A: Each SpreadJS Developer Bundle includes one developer license and one Deployment license key to license one production hostname. Additional hostname license packages are available for purchase separately as explained here on the pricing page.

A: You can deploy as many applications as you wish with the standard per-developer license on one hostname. Additional hostnames deployment licenses are available separately.

A: Non-commercial use is defined as an application(s) that will be used for internal or external use where the end-user will not be charged to access the service(s). Commercial and/or SaaS use is defined as an application(s) that will be used for external use where the end-user or company(s) will be charged to access the service(s).

A: If you purchased the Annual Deployment Key (most cases): The SpreadJS Deployment Key is valid for one year and is renewed annually. You must renew the Deployment License every year to continue using your SpreadJS application on a production server. Once renewed, you can continue to use the same license key for your hostname application(s). No new license key will be needed unless you upgrade your application to use a newer major version of SpreadJS. At that time, you will be issued a new license key.

If you purchased the Perpetual Deployment Key (only available by contacting sales): The SpreadJS Deployment Key will not expire and you can continue using that specific SpreadJS version you purchased in production for an unlimited time. Upgrade options are also available if you choose to use later major versions other than what you originally purchased.

A: You must remove all references to SpreadJS and its code from your applications and discontinue all use of the product. Failing to comply constitutes a breach of MESCIUS' property rights and End User License Agreement.

A: Licensing code uses the browsers window.location.hostname variable to check for a match with the license. If you're accessing your intranet application by IP address, you can use that. For example, if your URL looks like https://10.0.6.9/apps/employees/, then your hostname should be 10.0.6.9. If you're accessing your intranet application by machine name--for example, if your URL looks like https://appserver03/apps/employees/, contact sales to generate the key for you.

A: Application shells like Electron or Ionic often don't have a hostname, or their hostname is localhost. To create a distribution license for these types of applications, please contact sales to generate you a license key. These types of applications require a single domain (*.domain) license per application.

A: No, the license validation in SpreadJS does NOT call back to our server and does not require any internet connection. The mechanism just validates the key and domain to make sure they are valid and match.

A: SpreadJS is a developer component, not an application. It is up to the customer’s application to be compliant as the application controls all the security, etc.

A: Yes. The license will be linked to your company account with MESCIUS. If you don’t already have one, it will be created at the time of purchase. You can issue your purchased license key(s) to a third-party developer and retain all administrative control via the customer portal. If/when you need to transfer a license key to another developer, you can contact our sales team or support team to reassign the license.

A: Contact our sales team at us.sales@mescius.com and they will promptly respond with an answer.