Sejarah Kraton Jogja atau Kasultanan Yogyakarta berawal pada tahun 1558 Masehi. Pada saat itu Ki Ageng Pamanahan mendapat hadiah wilayah di Mataram dari Sultan Pajang karena jasanya telah mengalahkan Aryo Penangsang. Ki Ageng Pemanahan setia pada Sultan Pajang sampai akhir hayatnya dan membangun sebuah istana di Kotagede pada tahun 1577. Penggantinya adalah Sutawijaya adalah anak Ki Ageng Pemanahan. Namun Raden Sutawijaya menolak tunduk kepada Sultan Pajang dan ingin berkuasa di daerahnya sendiri, bahkan menguasai seluruh pulau Jawa. Setelah menang dalam pertempuran melawan Kerajaan Pajang tahun 1588, Mataram menjadi sebuah kerajaan yang kuat dan Sutawijaya menjadi Sultan yang bergelar Panembahan Senopati. Kerajaan Mataram banyak mengalami perkembangan pesat pada masa kekuasaan Sultan ke 4, yaitu Sultan Agung Hanyokrokusumo. Setelah Sultan Agung wafat, kemudian digantikan oleh putranya, yang bernama Amangkurat 1.
Kerajaan Mataram pernah mengalami konflik internal dan hal ini dimanfaatkan oleh tentara Belanda VOC hingga berakhir dengan perjanjian Giyanti bulan Februari 1755. Hal ini menjadikan Kerajaan Mataram dipisah menjadi 2 bagian, yaitu Kasunanan Surakarta dan Kasultanan Yogyakarta. Dalam perjanjian dinyatakan, bahwa Pangeran Mangkubumi menjadi Sultan Kasultanan Yogyakarta dengan gelar Sri Sultan Hamengkubuwono I. Sejak tahun 1788 sampai sekarang, Kasultanan Yogyakarta dipimpin oleh Sultan Hamengku Buwana X. Kraton Yogyakarta didirikan oleh Sultan Hamengkubuwono I, beberapa bulan setelah Perjanjian Giyanti. Lokasi keraton adalah bekas sebuah pesanggrahan yang bernama Garjitawati. Pesanggrahan tersebut digunakan oleh para raja Mataram sebagai tempat perisitirahatannya terakhir.
Ada Vversi lain menyebutkan, lokasi keraton merupakan sebuah mata air yang bernama Umbul Pacethokan dan berada ditengah hutan Beringin. Sebelum menempati bangunan Keraton Yogyakarta, Sultan Hamengkubuwono I tinggal di Pesanggrahan Ambar Ketawang yang sekarang termasuk wilayah Kecamatan Gamping, Sleman. Lokasi Keraton berada di antara Sungai Code di sebelah timur dan Sungai Winongo di sebelah barat, Panggung Krapyak di sebelah selatan dan Tugu Jogja di sebelah utara. Lokasi Kraton Jogja berada dalam satu garis dengan laut selatan dan gunung Merapi.