All have a similar meaning of not being real. Counterfeit is usually to do with money (the money being fake). Artificial can be used to describe anything from grass to human organs (an artificial heart) to colours in food. False can be used to describe teeth, or there can be a 'false alarm', which is idiomatic and means anything that turned out to be not as urgent or dangerous as first thought. Fake can be used to describe a tan, among other things. I think there is very little difference between most of these words, it's just that certain ones are typically used in specific phrases. I hope that helps a bit.