time will take you to make it, how many options, sections, tools the program will have, tools you will use in case you need to pay for anything to make the software and if they want you to deliver it in less than 2 or 3 days you charge more, express work have an extra fee, also let them know you will do some testing and after testing price could change a little bit since they will be receiving a final product, criteria will depend in how you handle your projects, also include in will be free support and for how much time or if any support once the program is delivered will be charged and how much that is important and that any extra feature that is requested after you start working in the project will be addedd at the end and if will have an extra charge or free.