You’ve seen all sorts of license agreements. They appear when you install other people’s software. You may have hated them. You may not have bothered to read them. But now that you are selling your own software, it is time to realize that the license agreement is very important, and that you need one too.

What Should You Put in a License Agreement?

You may write your own license agreement, including whatever you feel is important. I suggest you read through the license agreements of other software you’ve purchased, especially those that might be similar to your software, and choose the topics and thoroughness that you liked most. Also be aware of things that you didn’t like about others’ license agreements. For example, blocks of text in all capital letters are difficult to read.

Legal considerations of what should be included, and the exact terms to use, is beyond the scope of this blog entry. Consult an attorney if you have specific questions about the content of your license agreement.

Make Your License Agreement Easy to Read

You’ll want users to be able to read your license agreement with the simplest of editors. Do not force the user to purchase a copy of Microsoft Office or to install Adobe Acrobat Reader so he can read your license agreement. Such requirements would only persuade the user to not bother reading your license agreement.

A common practice is to create the license agreement using a simple text editor, such as Windows Notepad, and give the license file an extension of .txt. Every computer should be able to recognize and open a .txt file with a simple text editor.

Another consideration is that even with the simplest of editors, the user may not have word wrap turned on when viewing your license agreement. You don’t want text disappearing off the right edge of the text viewer to prevent him from reading your entire license agreement. Insert carriage returns to end each line of each paragraph. Keep each line short. It is better to have the lines too short than too long.

Also, by creating your license agreement as a simple text document, it may easily be used as input to other applications. For example, the program I use for creating the install wizard for my programs can import the license agreement from a simple text document and display agreement during the install process.

Require Acceptance During Program Install

The only chance you will get to actually enforce the terms of your license agreement is by making the user’s agreement a condition of the installation of your program. You may easily set this up if you use another of my favorite free programs, Inno Setup, for creating your program’s install wizard. If you created your license agreement as a simple text document, Inno Setup can show the user the text from that document during installation of your program, and cancel the installation if the user does accept it.

Of course, that does not guarantee that the user really does agree to it, or even that he actually read your entire agreement. But at least you can be assured that he really did consent to the terms of your license agreement.

Make Your License Agreement Easy to Find

If you want a user to honor the terms of your license agreement, he has to be able to easily find your license agreement. Though you may have shown him the license agreement when he installed your program, he may have reason to check the terms of your license agreement again at a later date. For example, after using your program for awhile, maybe he is wondering if he is allowed to install it on a second computer, make backup copies, or sell it to someone else.  Whether or not you allow these things should be clearly stated in your license agreement.  Consider making your license agreement easy to find by adding it to the Windows Start Programs menu and/or by adding it to your website.


A license agreement is an important part of making your program market ready. You must make it clear what you will allow and won’t allow the user to do with your program. Then make your license agreement a condition of installing your program, make it easy to read, and make it easy to find. None of this guarantees every user will honor the terms of your license agreement, but at least you will have made the conditions of use known and he will have accepted your terms.

Related posts:

  1. How to Protect Your Software from Piracy
  2. What is Software Deployment?
  3. Create Your Own Icons
  4. Should You Create a Windows .EXE Wrapper for Java Programs?
  5. Integrated Help and a User’s Guide for Your Programs

About the Author

2 Responses to Create a Software License Agreement

  1. [...] the license agreement file, Create a Software License Agreement, the readme.txt file should be a simple text document.  Create the readme.txt file using a simple [...]

  2. [...] Support – Or – NOT How To Remove A Computer Virus – Joe TechThat Damn Trojan HorseCreate a Software License Agreement [...]

More Do-It-Yourself Java Games

More Do-It-Yourself Java Games: An Introduction to Java Graphics and Event-Driven Programming is the second book of the Do-It-Yourself Java Games series. You'll learn to create windows and dialogs, to add buttons and input fields, to use images and drawings, and to respond to keyboard input and mouse clicks and drags. You'll create 10 more games including several puzzles, a dice game, a word game, and a card game.

This book assumes you either have an understanding of basic Java programming or you have read the first book, Do-It-Yourself Java Games: An Introduction to Java Computer Programming. Read more.

Do-It-Yourself Java Games

Do-It-Yourself Java Games: An Introduction to Java Computer Programming uses a unique "discovery learning" approach to teach computer programming: learn Java programming techniques more by doing Java programming than by reading about them.

Through extensive use of fill-in blanks, with easy one-click access to answers, you will be guided to write complete programs yourself, starting with the first lesson. You'll create puzzle and game programs like Choose An Adventure, Secret Code, Hangman, Crazy Eights, and many more, and discover how, when, and why Java programs are written the way they are. Read more

Step-by-Step Tutorial

Many of the tips, techniques, and tools discussed in this blog are demonstrated in a detailed step-by-step tutorial in the book, This Little Program Went to Market, by Annette Godtland.

The book takes a computer program through the entire process of creating, deploying and distributing a program, then selling and marketing it (or any other product) on the Internet. Read more.