The presence of heavy metals in human hair is being tracked to predict health risk, forensics, and environmental monitoring. Heavy metals are typically non-biodegradable and have a lengthy half-life, allowing them to linger in humans and the environment for many years. Heavy metal exposure in hair has been attributed to multiple sources from the environment and food intake. In this study, copper (Cu), nickel (Ni), zinc (Zn), chromium (Cr), manganese (Mn), lead (Pb), and cadmium (Cd) levels were measured in the scalp hair of 50 individuals in Bukit Mertajam, Penang, Malaysia. In conjunction with sampling, subjects' age, gender, lifestyle, diet, and working environment were also obtained through the questionnaire. The Atomic Absorption Spectrometry (AAS) method was used to extract all the metals in the hair samples. The mean concentrations of heavy metals were found to be in the following order (unit of mg/kg): Cr > Zn > Pb > Ni > Cd > Cu. Manganese was detected below the limit of quantitation among the elements (< LOQ). All elements except Mn were higher and comparable to the previous studies' international limit values. Cadmium prevalence was substantially associated with age, smoking habit, dyed hair, and working environment in Pearson's correlation analysis (p ≤ 0.05). Zinc was also found to be related to the working environment. Some elements were observed to be statistically related between heavy metals, Cd/Zn, Cd/Ni, Cr/Ni, and Pb/Ni, whereas smoking habit/dyed hair and dyed hair/working environment were the associated factors for metal distribution that were statistically correlated (p ≤ 0.05). To recapitulate, this study found that the distribution of heavy metals in hair was influenced by associated factors and between heavy metals. It has been indicated that heavy metal exposure to humans is influenced by factors such as geographical location, lifestyle, and working environment. © 2021. The Author(s), under exclusive licence to Springer Science+Business Media, LLC, part of Springer Nature.