Село Скелька знаходиться на правому березі річки Ворскла, нижче за течією на відстані 2 км розташоване село Куземин, на протилежному березі — село Українка. Село складається з 2-х частин, рознесених на ~1 км. До села примикає великий лісовий масив (дуб).
Поблизу села Скелька виявлено давньоруське поселення XII століття.
Перші згадки про село відносяться до середини XVII століття.
Скельський монастир, час заснування якого невідомий, у 1708—1709 роках спалений місцевими жителями.
12 червня 2020 року, відповідно до розпорядження Кабінету Міністрів України № 723-р «Про визначення адміністративних центрів та затвердження територій територіальних громад Сумської області», село увійшло до складу Грунської сільської громади[1].