How to add Custom fields in civicrm contribution page?
Do you need field associated with contribution page or contribution?

For contribution: 

You can create custom group extending contribution and then add custom field in it and then include the custom field in a profile. 

For Contribution page:

Currently CiviCRM doesn't allow to create custom field to extend contribution page. JMA Consulting have developed an extension to have custom field extend contribution page. This extension is not yet released in civicrm.org but they are hoping it to release it soon. You can try by downloading and installing manually.