I'm looking to put in place a more efficient license management process. I usually buy all EE and EE addon licenses for clients and have no process in place for managing them other than assigning the domain name to the purchase using the EE and Devotee notes fields.

What is your process for managing client licenses?

  • 1
    I'm going to say that this isn't really an appropriate question for the site. How do you pick a right answer? It's too subjective, no? Remember: not a forum. Commented Nov 28, 2012 at 13:26
  • Agreed, but still a relevant question for us all I think.
    – Anna_MediaGirl
    Commented Nov 28, 2012 at 14:58
  • I disagree that it's not appropriate. I think it's a great question; it's something a LOT of EE developers run into all the time.
    – adrienne
    Commented Nov 30, 2012 at 14:05

13 Answers 13


We generally have clients purchase licenses themselves like Adam mentioned, however there are instances (past and present) where we do all the license purchases. For those clients, we use EE to store the data. We created a new channel with a matrix field that includes license number, purchase date, cost, receipt number. It's pretty easy to setup and maintain.

  • Nice and simple!
    – Mutual
    Commented Nov 26, 2012 at 21:58
  • 1
    I feel like an idiot for not thinking about this! I use DevDocs and add a page with licence info: github.com/focuslabllc/dev_docs.ee_addon/tree/dev Commented Nov 27, 2012 at 20:36
  • I like this. I'm going to set this up in a Low Variables matrix.
    – CreateSean
    Commented Nov 27, 2012 at 20:42
  • 1
    it's also really easy to add things on besides license info, like server access and then using other channels and relationships for scheduling, team members and other internal data.
    – Mel
    Commented Nov 27, 2012 at 21:07


In order to minimize any issues with client licenses we always ask them to make the purchase themselves.

We provide them with a detailed set of instructions for using both Devot-ee and any third party sites like Pixel & Tonic.

We find this is advantageous in two ways,

  1. The administration process for us is vastly reduced, no invoices for 'materials', better cash flow.
  2. The licenses are in their name, if we ever part company with them there is no issues with them getting support directly.

There is also a side effect of this, we quickly learn how willing the client is to participate in the process and their level of attention to detail. This historically has led to a better level of preparation for clients with a lower threshold for detail.

When we have the license numbers we keep them in a text file in a non-public accessible place in the site so that they are available for all who need them/have the right level of access.

  • 1
    I also agree with this sentiment. It's something we've been working towards also. We still use the Basecamp model (above in my answer) in these instances, for no other reason than to have a list of the plugins that need to be purchased by the client.
    – Mutual
    Commented Nov 26, 2012 at 21:54
  • 1
    The Basecamp thing is great until such time as we part company with the client or change project management tool which is why the lo-fi way of a .txt works for us. Commented Nov 27, 2012 at 1:38

With the size of businesses here in Santa Fe (clients are already overstretched in this economy), and the turnover at nonprofits, it's easier to purchase licenses here in the studio and manage them for clients. Otherwise I'd be spending (wasting) way too much time tracking down vital information.

There is the tendency for overkill in managing such information. Rather than use a system that is based on outside services in order to keep track of all info, I have a simple solution: BBEdit. Yojimbo, Evernote, Basecamp and other apps and services have been giving me fits - it's the old story, very familiar to old school webloggers who used the original blogging systems. "What you put in, you can't necessarily get out in any usable form."

So ... I have an all-encompassing project set up in BBEdit, and all my information for a given client goes into folders within that project. This could be duplicated with E Text Editor or whatever such editor you use. All important login/configuration/email setup/etc. materials get added to this BBEdit project as individual .txt files. I carry mine on a protected thumb drive when out and about. Can be easily backed up to a secure (note I say secure) cloud service. [Come to think of it, it could even be handled/extended through Git if one desired. Now there's a way to overdo it.] I occasionally copy off a dated version of all clients and dump the project on an external backup system.

Bottom line: Text files mean I can open that information anywhere - on any system - with a text editor. Small footprint, easy to make backups and keep that information safe. Clients remain impressed I have all their configuration information at my fingertips, no matter where I am, or what gear I have with me.

So I find simple's better. Tip: your naming conventions will matter, when you get in a production rush. Be consistent with filenames and folders!


I've tried several times to come up with THE SOLUTION to managing licenses for EE and add-ons, but at the end of the day I keep coming back to the humble Google Docs spreadsheet. It's easily accessible, can be shared with our team, and puts all of the relevant info in the same place.

  • That's what I do too. Set up licences/add-ons as columns and sites as rows and highlight licences that still need to be purchased in a different colour so they're easy to spot.
    – Tyssen
    Commented Nov 27, 2012 at 21:56

Using the "Notepad" in the sidebar works as a lo-fi solution too. I also use "Quick Links" to link to training videos I record for the client. You can keep them there too.


We didn't find any commercial products to achieve this, so we've created a simple internal web application to manage all the website information of a client.

Basically we can manage domains and IP info, hosting details, db details, email accounts and also the related licenses (EE+addons) plus the photos licenses, if there are any.

Some of these information are stored with dates expire so we have alerts for any renewal.

And we can easily searching and filtering for the data we need.

It's pretty a hard job of archiving when you set up a website but it worth it.

Our tools are:

  • basecamp - for collaborate
  • freeagent - to manage client detail, quote and invoices
  • our "GestDomain" - to manage any related info to the websites

Usually we don't ask to client to buy themselves license because they don't have time or they don't know how to do that.... And we'll spend a lot of time to teach them how to do it.


We have started using Basecamp as a way to store these kinds of notes on a particular project. It allows the development team to build the site as is needed and then admin/finance to check out what we've been using to purchase the correct licenses and/or inform the client.

It's proven to be useful for us, and because Basecamp gives you unlimited free archived projects this works wonderfully for older projects.

On the flip side, if you were logging in to Devot-ee or EllisLab to see what license is used on what site, I would argue it's going to be naturally difficult and working 'project-upwards' will be easier to manage.


I currently buy the addons for my clients and manage registration numbers by using ActiveCollab (similar to basecamp) I create a notebook that has pages for reg #s as well as ftp/domain info.

I find having the client purchase things is a bit of a pain in generally. I do however send them all the information they'll need to re-install the addon if needed (original zip file + number).


We're in the same situation as you right now. We purchase all licenses for our clients and log it in our Accounting software (which happens to be Quickbooks Online). We also store the domains in the notes field when we can. We use Salesforce for our CRM and it is extremely customizable. I think after reading this I'm going to create a 'Software Licenses' data type in Salesforce with the appropriate fields so we can store this info for our clients, mail merge on it, etc.

Thanks for bringing a great point to light!


I've found it's a lot easier to buy and manage all licenses for clients as much as possible. This allows me to know for a fact that the client actually has a license allocated to the site. For long term customers, we just manage the licenses for them (and bill them for purchases).

I use an internal system based on Bilt to manage all client information. It allows you to create nested data types (really similar to EE's channels actually, but with nested relationships) to manage content. In my case I use a structure like this to manage project information:

  • Projects

    • Project Name
    • Client Name (dropdown)
    • Category (dropdown)
    • Team
    • Active
    • Start Date
    • Due Date
    • Description

    • Systems (multiple records)

      • Description
      • Server / URL
      • Password
      • Type
      • Username
      • Database
      • License
      • Notes

I store the customer's License keys for each product used on the Systems tab. Each of these items can have comments added to it, when requesting a transfer to another account (which EllisLab will do for you with a email sent to their support addresses, and for which Devot:ee has a dedicated form), I note that on the System record so I know when requests were made and fullfilled.


I have actually been thinking about coding an add-on that holds the licensing and technical information for all our sites and at the same time check the status of site (is it still online?).

If I ever get the time I'll probably get to work on this, but I don't see that happening any time soon.


1Password with a folder for each client.

  • Hi Theron, please consider elaborating a bit more. You could include links to 1Password itself and maybe to the docs which explain how to create a folder for each client etc.
    – Natetronn
    Commented Nov 30, 2012 at 9:22

A text file kept with the local client folder detailing modules, ftp user/pass, Sql user/pass, logins & any poignant notes. So lo-fi but very effective.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.