Are there earning limits which affect Social Security benefits?

Yes, but only if you are under age 65. There is no earning limit for people age 65 or older.

People under age 65 who collect social security retirement, dependents or survivors benefits are subject to an earning limit - amounts earned in excess of the limit reduces or eliminates your eligibility.

For those under age 65, the earning limit is $17,040 for 2018. For every $2 earned over the limit, social security will take back $1.

If you are age 65-67 (depending on your year of birth), the earning limit is $45,360 for 2018. For every $3 earned above the limit, $1 is withheld from your benefit. This applies only to earnings for months prior to attaining full retirement age. 

Once you reach full retirement, there is no limit on earnings.  You can earn as much as you like without incurring any withholding.

Pensions, annuities, investment income, interest earnings, capital gains, other government benefits, and certain other items do not count against the earning limit.