공진창은 조선시대에 지금의 충청남도 아산시 인주면 공세리에 설치되었던 조창(漕倉)이다. 공세곶창(貢稅串倉), 공세창(貢稅倉), 아산창(牙山倉)이라고도 하며, 조선시대 전국 9개 조창 중 한 곳이다. 아산(牙山) · 목천(木川) · 연기(燕岐) · 천안(天安) · 온양(溫陽) · 전의(全義) · 서원(西原)의 전세(田稅)를 실어 부근의 변장(邊將)이 영납하였다.
충청도 청주와 천안 등지의 세곡(稅穀)을 수납하여 한성의 경창(京倉)으로 운송하기 위해 설치하였다.
처음에는 공세곶창(貢稅串倉)으로 불렀는데, 1523년(중종 18)에 80칸의 창고를 지으면서 조창(漕倉)으로서의 면모를 갖추게 되었고, 공진창(貢津倉)이라고 부르게 된 것으로 보인다. 공진창에 창성(倉城)이 건립된 것은 1631년(인조 9)이며, 『 만기요람』에 의하면 공진창성(貢津倉城)은 석축으로 둘레가 380척(尺: 세종 당시 1척은 약 31.6㎝)이었다.
공진창의 창사(倉舍)는 현종 때 새로 지으려고 하였다. 그러나 안민창(安民倉) 공사와 중복되어 백성들이 고통을 당한다는 이유로 중단되었다가 영조 때 이르러서 새로 지었다. 이때 새로 지은 창고의 규모나 성사 시기 등은 명확히 알 수 없으나 이전보다 훨씬 축소된 규모로 지어진 듯 하다. 영조 때 편찬된 『 여지도서』에는 "공진창은 대내산(大迺山)의 위에 있으며, 창고가 약 22칸이다"라고 기록되어 있다. 공진창은 창사와 창성 · 조선(漕船) · 조군(漕軍) · 창관(倉官) 등으로 조직되어 있었다.
17세기부터 조창을 통하여 세곡을 운반하는 대신, 각 고을별로 지토선(地土船)으로 세곡을 운반하여 세곡 임운(賃運)의 비중이 늘어났다. 또한 내륙 산간에서는 면포(綿布)로 전세를 상납하는 지역이 많아지면서 해운판관(海運判官)을 세곡의 수납과 운송 책임자로 임명하였다. 그러나 조선 후기 조창의 기능이 약화되면서 충청도도사에게 겸임하게 하였다.
1697년(숙종 23)에는 전라도와 충청도의 도사(都事)가 판관(判官)을 겸임하였다. 이후 1762년(영조 38)에 공진창의 조선을 아산(牙山) 현감(縣監)이 영납(領納)하도록 규정을 정한 뒤에, 충청도도사가 해운판관을 겸임하는 일을 임시로 없앴다.
『만기요람』에 의하면 공진창에 조세를 납부하던 고을은 아산 · 목천 · 연기 · 천안 · 온양 · 전의 · 서원 등 7읍이었다. 『 대전통편』에 의하면 "바다를 통해 배로 물건을 실어 나르는 아산의 공진창은 조운선이 15척, 조군이 7백 20명이며, 공진창에 소속된 7읍은 배로 물건을 실어 날라 상납한다"고 하였다. 공진창의 조운선은 세곡 적재량이 800석인 배로 15척이 있었으나 1788년(정조 12)에는 12척으로 줄었다.
이후 『 신정아주지(新定牙州誌)』가 편찬되었던 1855년 경에는 조세를 납부하는 군현이 6읍[아산, 전의, 목천, 연기, 청주, 온양]으로 줄면서 조창의 규모가 더욱 축소되어 서쪽 창고 10여 칸 정도만 남게 되었다. 심지어 이때 공진창에서는 조세를 쌀이나 콩을 대신하여 돈으로 수납하고 그 중간 이익을 차지하는 폐단이 고질적인 병폐로 지적되었다. 또 조군을 확보하는 데 어려움이 누적되면서 공진창은 1865년(고종 2) 경에 폐지되었다. 『대전회통』에는 아산창, 즉 공진창은 폐단을 고쳐 없앴다고 하였다.