A lot of people I've talked to seem to be divided on this issue. When you're working on some kind of desktop application, is it generally a better idea to have it use the default system cursor? Or is using a custom cursor still okay.

Are there any particular benefits/drawbacks to either choice?

3 Answers 3


Custom cursors suit custom actions.

For example in some 3D interactive interface, (CAD, games, etc) then custom cursors are going to help immensely, but if you're providing a similar level and style of interaction to the rest of the desktop or to other applications on the same platform then it makes sense to make use of the familiarity of system cursors and carry those through into your own application to aid the learning process.

If the system cursors can be improved upon to make the learning process even easier for a particular action, then that would seem to make sense also, but typically that's not a likely scenario for interaction with simple controls anyway.


Custom cursors are a problem because they're breaking convention; in addition, it's breaking a convention you really can't try to emulate. You can try making your cursor look like a variation of the default cursor, but what about different cursor sizes, different default cursors across different platforms?

Custom cursors work well in games because the whole context is shifted; you get to make your own convention so there's nothing to break.

When custom cursors are used they're generally to perform a specific action, showing the user that their click/ect actions will work a little differently here; just like the default OS cursor changes. Make sure you have some reason to change the cursor to indicate a shift of context or a change in what the user can do.


As Roger stated, a custom cursor should ideally be suited towards helping the user understand what the cursor (and application) is capable of. A good example is photoshop. The cursor changes based on what action will be applied when used.

Just be careful. If the user can figure out what the cursor is supposed to do, it can help, but because a cursor is small, it is not always obvious and intuitive. Generally, I would shy away from custom cursors, just because there is a slight learning curve involved for the user in trying to understand. If the benefit of it is greater than the learning curve, then go for it, but that's something you have to decide.

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.