Река Велмо води началото си от централната част на Приангарското плата (югозападната част на Средносибирското плато), на 627 m н.в., в северната част на Красноярски край. Първите 170 km реката тече на север, следващите 160 km на запад, а последните 172 km на север по северната част на Приангарското плато. По цялото си протежение долината на реката е широка, но относително дълбока спрямо околния терен, и в нея Велмо силно меандрира сред гъстата сибирска тайга. Влива се отляво в река Подкаменна Тунгуска при нейния 282 km, на 57 m н.в., на 8 km североизточно от село Бурни, Евенкски автономен окръг, Красноярски край.
Водосборният басейн на Велмо има площ от 33,8 хил. km2, което представлява 14,08% от водосборния басейн на река Подкаменна Тунгуска и обхваща части от Красноярски край, в т.ч. и части от Евенкски автономен окръг. В басейна на реката има около 300 малки езера.
Границите на водосборния басейн на реката са следните:
на североизток и изток – водосборните басейни на реките Камо, Турама и други по-малки, леви притоци на Подкаменна Тунгуска;
на юг и запад – водосборните басейни на река Голям Пит и други по-малки десни притоци на Енисей;
на северозапад – водосборните басейни на река Голяма Черна и други по-малки, леви притоци на Подкаменна Тунгуска.
Река Велмо получава около 30 притока с дължина над 15 km, като 5 от тях са дължина над 100 km.
336 ← Вайвида 27100 / 2570
284 ← Енгида 102 / 2760
194 → Тея 261 / 8690
172 → Чапа 220 / 5260
9 → Бурная 126 / 1250
Подхранването на реката е смесено, като преобладава снежното. Пълноводието е през май и юни, като през лятото и особено през есента са характерни епизодични високи води, в резултата на интензивни дъждове. Среден годишен отток на 187 km от устието 224,91 m3/s. Замръзва в края на октомври или началото на ноември, а се размразява в края на април или началото на май.
Река Велмо тече през безлюдни райони, като по течението ѝ има само три малки села – Велмо, Тунга и Бурни (последните две в Евенкски автономен окръг).