What's the best way to solve user design consistency problems inside an application that gives total control over the appearance?

For example, user can choose font of element X, then later adds element Y but doesn't remember what font he used on X or he is lazy to check it out, so he chooses a different font. Can I present the font selector in a way that it makes the user choose the right font?

  • Can you provide some screenshots or a little more detail to help describe this situation?
    – Brett East
    Commented Mar 25, 2016 at 22:12

5 Answers 5


I don't understand why the user would be able to set a font specific to either X or Y - Surely you could place font control as a global variable: set the font once for all elements. - That way the user can only make a consistent choice.

I find, when dealing with user customisation, it's best to stick to limited choices and mostly at a large scale: system wide choices for font, colour scheme, etc. That way, your site won't end up looking like GeoCities.


It sounds like a bit of contradiction to me, but if you give total control over the appearance to the user then how can you also then restrict them to make consistent choices?

I think one common strategy is to give users a 'theme', such as what windows and other operation systems do, that applies a set of styles to the user interface, then allow users to customize specific elements but not all of it.

The other thing is to provide all the user interface components to the user, and allow them to customize individual elements within that component, such as what many bootstrap theme modifier tools allow you to do.

I am sure you'll find something between the two that will work for your users. Perhaps also having some analytics on what users are choosing to customize will let you figure out what you can keep control over versus what you let the users customize.


You should take a look to most CMS that include this kind of feature. What they usually do is to offer pre-defined layout sets with fonts, colors and some choice of structure (columns, full width vs boxed and such). Personally, I also offer a way to modify things further with extra HTML and CSS coding. Since this will only be used by advanced users, they can easily fine tune at will.

Leaving this decision to users is a big problem. Going back to the CMS samples, we get this claim almost every single day "I used a theme but can't make it look like the demo" or "I need to hire a designer to make the theme look as I want". Doh. The more choices you add, the less likely a regular user will be to make something that looks right. A designer has training, is a professional, knows the theory and the trends. Most users think their personal taste is amazing and unrivaled. Yet, they can't tell exactly why their site looks so bad. And the answer always end in... your coding. Simple as that.

So, this is what WE do:

  • if this is for a final user, we research and eventually train the user with a more customized CMS. HOWEVER, we always set some strict boundaries so the user can't go crazy. we simply don't let him break the site.

  • if this is for a broad user base, boundaries get even stricter and most layouts are pre-defined, even color palettes and combinations, at most we leave some font choices, where they can choose between 5 to 10 font families for headers and the same for text. We're the professionals, so we have to deliver a professional product, even if it looks as "limited".

Think about this: People don't like to assembly their furniture, they do it because it's cheaper, but 100 out of 100 times they would take a professionally built piece of furniture over some "build it yourself" crap. Giving some engines and metal won't make a regular guy a car engineer. So... why do it with sites? Sites may give an income many times the price of an Ikea chair, so why would anyone want to go this way? (Of course, unless you're selling themes on Envato or the likes, then you tell users "you can do anything because we offer 1,000,000 options!" )

In short

If you want consistency, start by restricting options and make the whole thing consistent within your own rules, do not leave any room for randomness

EDIT: while more oriented to mobile, you might find some useful concepts in "Using Back-End Design to Create Customizable Front-End Mobile Experiences"


While providing font customizations may seem like an eye candy feature, you might want to pose a limitation on the number of choices. It becomes difficult for people other than designers to make font choices if they are given more choices to decide from. Choose in such a way that the fonts are from different families to help making the decision easier. Ideal number of choices could be four or five, one of which the user would settle down to.


Just provide a "Recently used" section for each type of design choice. For example when changing the font have a recently used font like provided in MS word:

enter image description here

For colors, use recently used color:

enter image description here


If you want you can add under it a label saying where it is used but unless the user is using way too many fonts or colors they should be able to determine from their small recently used list which one goes where ("Ohh the Arial Bold is what I used on my headers").

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.