Ham est une commune de 10 897 habitants répartis sur une superficie de 32,8 km². La population y est légèrement féminine, avec 50,3% de femmes. L'âge moyen est d'environ 42 ans. La majorité des habitants sont propriétaires de leur logement, à hauteur de 80%. Le revenu moyen par habitant s'élève à 18 855€ nets annuels, ce qui donne une indication sur le niveau de vie. Les nationalités dominantes sont belges à 95,9%, suivies par une minorité néerlandaise (1,3%) et d'autres nationalités comme turques, polonaises, bulgares, espagnoles et allemandes à des taux bien moindres.
Le parc immobilier de Ham est majoritairement composé de maisons (85,8%), alors que les immeubles à appartements représentent 14,2%. Les maisons ouvertes, fermes ou châteaux représentent à elles seules 56%, les maisons semi-fermées 20,7%. Côté âge des bâtiments, la moyenne est située autour de 1972. Pour les maisons à vendre, on compte actuellement 10 biens, avec un prix moyen autour de 410 300€. Le prix le plus bas observé est de 269 000€ tandis que le plus élevé atteint 698 000€. Ces chiffres permettent de situer l'offre dans une gamme assez large.
Au niveau de la mobilité, Ham bénéficie d'un accès rapide à l'autoroute A13 / E313 en seulement 8 minutes depuis le centre-ville. L'autoroute A2 / E314 est accessible en une quinzaine de minutes. Plusieurs routes principales traversent la commune : N73, N110, N141, N156 et N724. En transports en commun, dix lignes de bus desservent la localité, notamment des lignes comme la 170 (Beringen - Mol) ou la 299 (Hasselt - Diest - Geel). Les gares les plus proches sont à Beverlo, Leopoldsburg, Balen, Beringen et Mol.
Concernant les services et équipements, Ham offre des commerces dont un SPAR, un Aldi et un Carrefour. Pour les familles, il existe une crèche nommée Petit Patoe et plusieurs écoles maternelles et primaires publiques et libres. La commune ne dispose pas d'école secondaire. Aucune station de recharge pour véhicules électriques n'a été répertoriée sur le territoire. Il n'y a pas non plus de système de vélos partagés ni d'autopartage. Enfin, l'aéroport international d'Anvers-Deurne est accessible en 39 minutes en voiture ou en environ 2h30 en transport en commun.