Halmahera (dawniej: Djailolo, Jailolo, Jilolo, Gilolo) – wyspa w Indonezji, największa w archipelagu Moluki.

Leży w północnej części Moluków (prowincja Moluki Północne); oblewana przez Morze Moluckie (od zachodu), Morze Seram (od południa), Morze Halmahera (od południowego wschodu) oraz Ocean Spokojny (od wschodu i północy). Oddzielona cieśniną Morotai od wyspy Morotai, cieśniną Patinti od wyspy Bacan i cieśniną Jailolo od wyspy Gebe; otoczona wieloma mniejszymi wyspami.

Halmahera ma nieregularny, rozczłonkowany kształt, na który składają się cztery półwyspy. Powierzchnia (według różnych źródeł) wynosi 17 780 km² lub 18 039,6 km², długość linii brzegowej 1607,2 km; linia brzegowa bardzo dobrze rozwinięta, z trzema wielkimi zatokami (Kao, i ) i wieloma mniejszymi; powierzchnia górzysta (Gunung Gamkunoro lub Gamkonora 1635 m n.p.m.), na wybrzeżach wąskie niziny; klimat równikowy wilgotny, roczna suma opadów 2000–2500 mm; porośnięta lasem równikowym, występują także drzewa iglaste.