Shamrock is an unincorporated town in Creek County, Oklahoma, United States, located on Oklahoma State Highway 16 south of Drumright and west-northwest of Bristow. The population was 65 at the time of the 2020 census. It was named for Shamrock, Illinois, the hometown of local store owner, James M. Thomas.