Yogyakarta ligger på sørsiden av øya Java, og er avgrenset på tre sider av provinsen Jawa Tengah og mot sør av Indiahavet. Arealet er på 3 186 km², noe som gjør området til den nest minste av Indonesias provinser, etter hovedstadsområdet Jakarta. Yogyakarta er blant de tettest befolkede områdene i landet.