בפתיחת עונת 2007/2008 שותף כהן במשחקי קבוצתו במסגרת מוקדמות גביע אופ"א, מול אוניאו לייריה. בעונה זו הוא הפך לשחקן חשוב בקבוצה הבוגרת, תוך שהוא מפגין יעילות בקישור האחורי וכושר מנהיגות, כבר בגילו הצעיר. כהן סיים עם הקבוצה במקום השני בליגת העל בעונה זו, אחרי בית"ר ירושלים. בעונת 2008/2009, תחת המאמן לותר מתאוס, סבל כהן מפציעה שהשביתה אותו לחלקים מסוימים של העונה, אך המשיך לפתוח ברוב משחקי הקבוצה.
לקראת עונת 2010/2011 עבר כהן לקבוצת נירנברג מהבונדסליגה הגרמנית[1]. בינואר 2011 הבקיע את שער הבכורה שלו בליגה הגרמנית, בניצחון 2–0 על המבורג. בפברואר 2011 הבקיע את שערו השני במדי הקבוצה, שער ממרחק של 25 מטר שחתם את ניצחון קבוצתו 3–0 על פרנקפורט. באותו חודש גם זכה כהן בתואר השחקן המצטיין החודשי של נירנברג, ובתום העונה האריך את חוזהו בקבוצה בתמורה להכפלת שכרו[2]. בעונתו השנייה בקבוצה שותף ב-26 משחקים בכל המסגרות, אך בתחילת עונת 2012/2013 מעמדו בקבוצה התערער, ועד לאמצע העונה הוא שותף ב-9 משחקים בלבד.
ב-4 בפברואר2013 חזר כהן לישראל, והושאל לקבוצת הפועל תל אביב עד לסיום העונה[3]. שבוע לאחר מכן ערך את הופעת הבכורה שלו במועדון, כשפתח בהרכב הקבוצה בדרבי מול מכבי תל אביב. לקראת סיום עונת 2012/2013 הבקיע את שערו היחיד במדי הפועל תל אביב, בדקה ה-95 מול בני יהודה. היה זה שער הניצחון שהבטיח להפועל תל אביב את המקום השלישי שמוביל לליגה האירופית[4]. בסך הכל ערך כהן 12 הופעות ליגה במדי הפועל תל אביב, בנוסף לשתי הופעות במסגרת גביע המדינה.
ב-30 ביולי2013 חזר כהן לגרמניה וחתם לשלוש שנים בקבוצת אינגולשטאדט 04 מהבונדסליגה השנייה[5]. ב-22 בספטמבר כבש את שערו הראשון בקבוצה, בהפסד 1–4 מול פ.ס.וו פרנקפורט. במהלך העונה הראשונה שלו בקבוצה שימש כהן כקפטן הקבוצה בחלק מהמשחקים, וכבש בסך הכל שער אחד ב-22 הופעות בליגה. בעונת 2014/2015 שותף רק בחמישה משחקים בליגה בעקבות פציעה, אך בסופה העפיל עם הקבוצה לבונדסליגה בפעם הראשונה בהיסטוריה של המועדון, ואף שותף במשחק העלייה.
בעונת 2015/2016 ערך כהן 20 הופעות בבונדסליגה ובישל שני שערים. לקראת סיום העונה האריך כהן את חוזהו בקבוצה בשנתיים נוספות עם אופציה לעוד עונה[6]. ב-22 באוקטובר2016 הבקיע כהן שער בדקה השישית נגד בורוסיה דורטמונד במסגרת המחזור השמיני בליגה, ובסך הכל כבש שבעה שערים בבונדסליגה בעונת 2016/2017, אך בסופה ירדה הקבוצה בחזרה לליגת המשנה. בעונת 2017/2018 כבש כהן שני שערים ב-27 הופעות ליגה. בעונת 2018/2019 כבש שער אחד ב-21 הופעות ליגה, ובסופה ירד עם הקבוצה לליגה השלישית.
ב-19 ביוני2019 חתם כהן לארבע שנים במכבי נתניה, עם אופציה לעונה נוספת[7], ומונה לקפטן הקבוצה[8].