I had a similar problem with a project I was working on, where there were thousands of tags. How many are you dealing with?
There are a couple of things to think about BEFORE doing an import that will aid your design:
1. Do we need ALL the tags? - or can they be cleaned up
Often this can be the case where people have added countless spellings, plurals for the tags. These can be combined. Also, worth tackling whether or not the client is happy with the structure of the tags or whether something can be done about re-structuring.
Especially from a UX perspective, people will want to be able to find what they want as quickly as possible, without having to deal with a large dataset that is not actually useful.
We then tasked one person with the role of maintaining the tags for the future. In your design, you have the add tag button. I am not sure if the '+' means that will add the tag to the system for all users, or just adding an existing tag?
This then meant that what we imported was going to be not only a new system for using the tags, but also maintaining them, which was much cleaner.
2. Are there ones which are more popular than others?
If there is a load of tags which are used ALL the time, then look at giving them some kind of higher importance than others. That will then help you prioritise the screen that you have above. Otherwise, you may find out that tags can be more popular to some staff members than others, at which point you maybe want to prioritse that users "most used" tags.
How can you improve your design :
- Using an area to add tags in different ways.
- Autocomplete is really useful when doing tagging - allowing users to
search, add with a click.
- Being able to see exactly what list is being built up and easily removing from the list