Опруга или федер (нем. Feder) је машински елемент који се користи за остваривање еластичних спојева. Под дјеловањем силе долази до деформације опруге, а по престанку дјеловања силе враћају се у првобитни положај. Намена опруга је врло разнолика. Могу служити за привремено спремање (акумулацију) механичке енергије, за ублажавање удара (амортизер), за мерење силе и друге намене.
Опруга је изразито еластичних својстава, који приликом деформације (промене облика) преузима механички рад у облику акумулиране потенцијалне енергије, а који у одређеном тренутку може ослободити повратком у почетни положај. Механички рад претварају у потенцијалну енергију, а њу опет назад у механички рад, то јест опруге акумулирају рад. Служи за ублажавање удараца (на возилима, осовинским спојницама), за акумулирање механичког рада (у механичким сатовима, дечјим играчкама), за поврат покрета (код вентила или полужја), за ограничење силе (на моментним кључевима за завртање), за мерење силе (код динамометара), за регулацију подизаја (код регулацијских вентила), као осцилациони део и у многе друге сврхе.
Опруге се деле према облику (лиснате, тањирасте, прстенасте, цилиндричне завојне, коничне завојне, спиралне), пресеку (квадратне, пљоснате, округле и друго), оптерећењу (истезне, притисне, оптерећене на савијање или увијање). Материјал од којег се израђују најчешће је посебна врста челика за опруге, који је еластичан и јако жилав (челик за опруге). За специјалне намене употребљавају се легирани челици: нерђајући, антимагнетски, а сасвим изузетно и други метали, те и неметали, на пример композитни материјали.