Розпочинав займатися футболом на батьківщині в «Гартленді», за який він провів щонайменше 57 матчів у другому та першому дивізіонах чемпіонату Нігерії, в яких відзначився 29-ма голами. У 2019 році провів 6 поєдинків за «Джант Брілларс» у другому дивізіоні чемпіонату Нігерії.
У серпні 2019 року переїхав до Європи, де підписав «Грассгоппер», який виступав у швейцарській Суперлізі[1]. Дебютував за першу команду 5 жовтня 2019 року в переможному (3:0) поєдинку проти «Віля», де його замінив на 79-й хвилині Джотто Моранді[2]. Першим голом за клуб відзначився 15 серпня 2021 року у переможному (5:0) матчі Кубку Швейцарії проти «Віднау», в якому замінив Шкелькіма Демхасая. У сезоні 2020/21 років його перевели до другої команди, яка виступала в Першій лізі Швейцарії. У цьому сезоні відзначився 4-ма голами в 5-ти матчах.
28 жовтня 2021 року продовжив контракт з «Грассгопером» до 2024 року[3]. У наступному сезоні відкликаний з основного складу, при цьому переважно грав за резервний склад. У вище вказаному сезоні відзначився 5-ма голами у 9-ти матчах резервної команди. 5 лютого 2022 року вперше вийшов в основному складі в програному (1:3) проти принципових суперників-земляків, «Цюриха»[4]. Тиждень по тому знову вийшов у стартовому складі та відзначився своїми першими двома голами у вищому дивізіоні чемпіонату Швейцарії, в переможному (2:0) поєдинку проти «Лозанни»[5]. 6 серпня 2022 року відзначився голом і віддав результативну передачу на Ція Вільяма Нденге в чемпіонському переможному (3:2) поєдинку проти «Санкт-Галлена»[6].
Більшу частину сезону 2022/23 років провів поза межами поля через проблеми з правим коліном, яке потребувало операції на початку 2023 року[7]. Повернувся до команди напередодні старту сезону 2023/24 років, відновившись якраз вчасно для підготовки до нового сезону[8]. 12 листопада 2023 року оформив свій перший хет-трик за головну команду, в переможному (5:2) домашньому матчі проти «Лозанни Уші»[9].
Наприкінці сезону 2023/24 років підписав попередній контракт з ЛНЗ, але до останнього сумнівався в доцільності переїзду до України[11]. 17 серпня 2024 року вільним агентом підписав повноцінний контракт з черкаським клубом[12][13]. У футболці ЛНЗ дебютував 18 серпня 2024 року в переможному (3:1) домашньому поєдинку 3-го туру Прем'єр-ліги України проти львівського «Руху». Френсис вийшов на поле на 60-й хвилині замість Марка Ассінора[14][15][16].