Ustalenie rodowodu nazw jest trudne. Profesor Białecki w "Encyklopedii Polic" kwestionuje możliwość łączenia ich z "karpiną", czyli pozostałym po ścięciu lub obaleniu drzewa pniakiem z korzeniami ukrytymi pod ziemią.
Nazwę łączy z karpiem, rybą ponoć ongiś licznie tu występującą. W każdym razie informuje, że nazwy mają rodowód średniowieczny, przytaczając (bez podania źródeł) zapisy: "rzeka 1309 Carpyn, jez. 1277 Carpyn, bagno 1216 Karpino".
Skoro tak to nazwy miejscowe są na pewno przedniemieckie. Czy słowiańskie? A to akurat trudno ustalić, bo źródłosłowem europejskim jest łaciński termin "carpa", choć wg etymologów, w Polsce i w Czechach "karp" pochodzi z niemieckiego "Karpfen". Inni językoznawcy wskazują jeszcze mniemanie prasłowiański "korp" i nazwy pochodne: małoruski "korop", czy u południowych Słowian "krap", jednak i tu mamy rodowód łaciński.
Jeżeli te tropy językowe są słuszne to wracamy do łaciny, jako że karp jako ryba w naszym regionie w naturze nie występował, pojawił się dopiero w XII i XIII wieku za sprawą hodowli klasztorów cysterskich. A jeśli tak to nosił łacińską nazwę "carpa", od czego - o ile w jakimś momencie zarybiono np. jezioro - wzięły się przytoczone przez profesora średniowieczne nazwy.