Bartels began his career at TSV Russee and later played for SpVgg Eidertal Molfsee before joining Holstein Kiel in 2002. In 2005 Bartels moved up to Holstein Kiel II. Later that year he broke into the first team squad at Kiel, before joining Hansa Rostock of the Bundesliga in 2007.
Bartels became an instant regular at St. Pauli, making 31 appearances in his debut season. His first start came on matchday 6, against Borussia Dortmund. However, the club was relegated from the Bundesliga having finished in last place. His strongest two seasons for St. Pauli were the 2012–13 season and 2013–14 season, in both of which he scored 7 league goals in the 2. Bundesliga. In January 2014, he announced his decision to not renew his St. Pauli contract but to leave the club for Werder Bremen.
Werder Bremen
Bartels signed a three-year contract with Werder Bremen. In his first season he was able to command a regular place in the team from matchday 3 onwards and made 29 league appearances scoring 4 goals. In the following 2015–16 season he played 30 matches taking his goal tally up to 8, mostly on the right of the midfield. In July 2016, Bartels agreed to a contract extension, reportedly until 2019. In December 2017, in a 2–1 win against Borussia Dortmund, Bartels tore his achilles tendon which required surgery. In March 2018, his contract was extended until 2020 after he and Werder Bremen decided to exercise such an option in his running contract. On 1 March 2019, following a long time out of action with complications during the headling process, it was announced he would play in two matches for the club's reserves before he would return to the first team squad. He scored in his first match with the reserves, a 1–1 draw away to SC Weiche Flensburg 08 on 3 March. In March, he made two substitute appearances for the first team, in a 4–2 win against Schalke 04 on matchday 25, and in a 3–1 away win against Bayer Leverkusen. He missed the rest of the season due to a muscle injury with manager Florian Kohfeldt expecting him to return in time for pre-season preparation in the summer.