З 2005 року грав за дубль московського «Динамо», не потрапивши за два сезони до основного складу першої команди жодного разу. У 2006 році керівництво клубу ухвалило рішення віддати Граната в оренду ФК «Сибір» (Новосибірськ), що виступав у першому дивізіоні. Провівши у складі нового клубу сім матчів, Володимир знову повернувся у Москву.
Протягом сезону 2007 став одним з основних захисників «Динамо», провівши 27 матчів у Чемпіонаті Росії, однак у наступному році потрапляв до основи вкрай рідко. Втім, подолавши усі труднощі, молодий захисник повернув собі місце у складі команди та привернув до себе увагу тренерів збірної Росії.
У 2013 році Володимир був призначений капітан «біло-блакитних», проте в жовтні 2014 року захисник був переведений у дубль команди[1]. А оскільки до цього моменту у Граната закінчувався контракт з «Динамо», який москвичі продовжувати не хотіли[2], то до нього почали проявляти інтерес російські клуби[3][4], а його агент почав підшукувати гравцеві клуб в Італії[5]. Взимку 2015 року Гранат не з'явився ні на одному зборі «Динамо» і міг залишитися без ігрової практики до закінчення контракту влітку 2015 року[6], однак у останній день зимового трансферного вікна" перейшов на правах оренди до кінця сезону 2014/15 в «Ростов»[7], хоча і там не провів жодного матчу.
3 березня 2015 року московський «Спартак» оголосив про перехід Граната в команду після закінчення сезону 2014/15 на правах вільного агента, контракт розрахований до липня 2019 року.[8]. У московському «Спартаку» виступи гравця не склалися: спочатку Гранат відновлювався після травми і відсутності ігрової практики, а потім, на якийсь час закріпившись в основному складі, втратив довіру головного тренера Дмитра Алєнічева і був виставлений на трансфер по закінченні сезону 2015/16[9][10]. З початком сезону 2016/17 Гранат був заявлений у ФНЛ за «Спартак-2» і провів за команду кілька ігор, в одній з яких, проти свого колишнього клубу — московського «Динамо» — відзначився голом.
31 серпня 2016 року, незважаючи на своє бажання повернутися в основний склад «Спартака» після відставки Аленічева[11], в останній день літнього трансферного вікна, Володимир, поряд з двома іншими спартаківцями Павлом Яковлєвим і Сергієм Паршивлюком, залишив клуб за згодою сторін. У той же день стало відомо, що Гранат підписав контракт з футбольним клубом «Ростов»[12]. У березні 2017 року, в матч Ліги Європи проти «Манчестер Юнайтед», отримав перелом ключиці і вибув до кінця сезону.
Володимира Граната залучали до матчів юнацької та молодіжної збірної Росії. У складі останньої він провів 10 поєдинків та жодного разу не засмутив голкіперів суперників.
19 серпня 2011 року Володимира вперше було викликано до лав другої збірної Росії з футболу на матч проти олімпійської збірної Білорусі, що носив неофіційний характер.
11 травня 2012 року головний тренер збірної Росії Дік Адвокат оприлюднив розширений список футболістів, що готуватимуться до Євро-2012, до якого потрапив і Володимир Гранат[14], проте на поле на турнірі так і не вийшов.
6 вересня 2013 року дебютував у складі національної збірної у відбірковому матчі ЧС-2014 проти Люксембургу, відіграв весь матч (перемога 4:1)[15]. На самому «мундіалі» Гранат знову потрапив у заявку, але на поле не виходив.
У травні 2012 року Володимир Гранат відзначився не лише футбольними здобутками, а й благочинністю. Футболіст витратив 195 тисяч рублів на придбання ліків для вакцинації дітей від пневмонії[17].