В 1857—1866 годах жил в Москве, был вольнослушателем Московского университета. Во время русско-османской войны с 1877 по 1878 он был солдатом русской армии.
Петко Каравелов был женат на Екатерине Великовой Пеневой (1860—1947), у супругов было три дочери: Радка, Виола и Лора.
Умер в 1903 году в Софии. Похоронен на кладбище церкви Святых Седьмочисленников.