Every new install of CiviCRM starts out fresh and clean, with only the built-in data fields. However, as every organisation has its own data needs, we often find ourselves adding more and more custom fields to this. This can easily start to clutter your contact views.
An important way to avoid this and manage your custom data fields is to create relevant contact subtypes and assigning your custom data fields to those subtypes.