DEV Community

Cover image for Everything you need to know about EULA
Tomek Poniatowicz for GraphQL Editor

Posted on • Updated on • Originally published at

Everything you need to know about EULA

EULAs or End User License Agreements everyone knows what they are, nobody reads them. You’ve probably clicked “I agree” without as much as a glance many times yourself. But what if you actually need one for your program or app?

The basics

The End User License Agreement is basically a contract between the seller and buyer (or provider and user) of the software. Usually they’re presented in a click-through fashion only requiring clicking accept to install or use the program. Most EULA’s:

  • STATE how the software can be used and any limitations on that. Such as forbidding reverse engineering it, studying the source code or limiting the devices the software can be used on,
  • EXPLAIN how the provider complies with rules and consumer protection laws, pertaining to the platform relevant to the software,
  • ENSURE the publisher has the rights it needs to protect its interests in regards to the software (especially in cases like microtransactions within games and apps),
  • PROTECT the provider from being sued by the user for any damage caused by the software or any adverse effects of using it not as intended.

Where do I get one?

So now that you know what it does, how do you get one? There’s three options:

  • Hiring a lawyer to write you one - this is the surefire option if you want to absolutely be sure there’s no holes or mistakes. Fork up the money and hire a professional to write one for you, the obvious drawback is that it will cost you (a lot).

  • Using a template - there's a bunch of EULA templates available for use for free. You could use one but you would need to modify it to fit your software’s particularities. Yeah it might be a little complicated but let’s be honest it’s not as hard as programming. Oh and obviously since you’re acting as you own lawyer here if you make any mistakes that’s on you.

  • Using one provided by a distribution platform - thankfully some platforms like Apple’s iTunes Store and Google Play provide a default licensing template. While these are a free and low-effort option you should keep in mind they are drafted to ensure the interests of the platform operator, not yours. They might favor customer interests over the developers or they might not be fitted to your type of software. So you really should still read and carefully amend them to fit what you need. Also bear in mind that if you're releasing on multiple platforms you might end up with a number of different licensing terms applying to your software.

End User License Agreement


Key issues to look for

Now that you know where to get one it’s time to look at what you should focus on in one.

  • Scope - make sure that the license explains what the user can and cannot do. Remember that excessive prohibitions might not be legal, as Steam found out when the Court of Justice of the EU ruled that publishers cannot forbid users from reselling their downloaded games.

  • Online features and services - if your software has or requires online services make sure that is also covered in the license. Activision recently found this out the hard way after shutting down their online song database for Guitar Hero and getting hit with requests for refunds. So if you’re planning on discontinuing online services at some point or even at least ensuring you’re protected in case of downtime it’s prudent to include that in the license.

  • Uploading and third party content - if the user can upload content to your or a 3rd party server the EULA should lay down guidelines on how that is handled. How the publisher can use that content and what the users can upload.

  • Updates and additional content - if you’re planning on providing updates or additional content (either free or paid for) the EULA should cover that as well or you’ll end up having to fiddle around with this every time you do so.

  • Distribution platform - unless you’re distributing by yourself you’re probably going to need to look at the Terms and Conditions for the platforms you’re planning on distributing your software on. For an example some platforms might require you to adhere to their policies on refunds or advertising. As mentioned above some distribution platforms will provide a standard EULA so if you’re planning on releasing on multiple different platforms you’ll need to look through them.

All in all it’s simply a good idea to make sure your EULA covers what you want and does not have any holes. Sure usually people will at most give it a glance before clicking ‘agree’ but some might read it and on occasion you can even get into some trouble if it’s badly written. Better safe than sorry.

A guest blog post for GraphQL Editor blog by Michal Tyszkiewicz

Speed up your GraphQL API development

GraphQL Editor is a supportive tool for both advanced GraphQL users as well as those taking their first steps with GraphQL APIs. Our all-in-one development environment for GraphQL will help you build, manage & deploy your GraphQL API much faster thanks to dozens of built-in micro features. Try GraphQL Editor for free!

GraphQL Editor

Top comments (0)