Get the perfect smile with composite bonding in London

Ruh Dental Notting Hill is conveniently situated in Notting Hill Gate serving our patients in West London. We are delighted to offer Dental Implants, Composite bonding, Porcelain Veneers and Invisalign in West London

Treatments

Clinic Photos

Team Photos

Dr Peter Niesiolowski

BDS (Lond), PGDip Implants | GDC No. 73725

Cosmetic Restorative Dentist

Dr Josh Virdee

BDS | GDC No. 259082

Cosmetic Restorative Dentist

Dr Sonnie Yousefzadeh

BDS | GDC No. 258886

General Dentist with Orthodontic Interest

Lana Fattah

FdSc Oral Health Science | GDC No. 200745

Cosmetic Hygienist

Shaina Lawrence

GDC No. 263064

Dental Therapist

Chrystal Sharp

GDC No. 191284

Orthodontic Therapist

How to find us

This state-of-the-art dental practice in Notting Hill offers a warm & relaxing environment with a team that strive to provide the very highest standards of care.

We are a 5 minute drive from Bayswater, 3 minute drive from Queensway and a 5 minute walk from Holland Park. Gloucester road, Earls Court, South Kensington and Olympia are all less than 10 minutes away.

Opening Hours

Monday 8:30 am – 5:30 pm
Tuesday 8:30 am – 5:30 pm
Wednesday 8:30 am – 5:30 pm
Thursday 8:30 am – 5:30 pm
Friday 8:00 am – 2:30 pm
Saturday (Alternate) 9:00 am – 1:00 pm
Sunday Closed

London Underground

Central line –

Notting Hill Gate

Central line –

Holland Park

Circle line –

Notting Hill Gate

District line –

Queensway

Circle line –

Notting Hill Gate

Circle line –

Bayswater

Car Parking

Bayswater Road Car Park

(9 min walk)

Google rating score of 4.8 of 5, based on 400+ reviews

Porchia A

Got my Invisalign and whitening with dr Kunal at the Fleet Street branch and it really has been life changing. He’s given me the confidence to smile and laugh without covering my mouth. Very professional and listens to what i wanted and always exceeded my expectations. Also makes the entire Invisalign journey easy and comfortable as he was always there to answer any questions I had at any time. Highly recommend ruh dental and dr Kunal. It really is the best decision I’ve made. Had so many compliments on my teeth, even by strangers.

Isma

I’ve been wanting to come to Ruh dental for years for a perfect smile, my experience has been amazing, the whitening kit really has brightened my teeth I’m always getting compliments from everyone so I’m very glad I chose Ruh.

Ellie Rodriguez

I couldn’t be happier with my experience at Ruh Dental. The staff are all really friendly and helpful, and every step of the treatment was clearly explained with no sales pressure at any time. My dentist was amazing and I’m so pleased with the outcome.

+

GATHERING TREATMENTS

You’re one step closer to your dream smile.

If you’re not redirected in 5 seconds, click here
+

Let’s start

Get a 95% accurate quote from one of our treatment co-ordinators in 48 hours.

HOW DOES IT WORK?

Select your smile goals so we can tailor your treatment plan just for you
Upload a photo of your smile so we can provide an accurate assessment
Finish up with some dental history and preferences.
+

{{customer_data.first_name}},
you’re a star

Your details have been sent to our clinical team who will prepare your provisional treatment plan.

WHAT HAPPENS NEXT?

You will be contacted in the next 48 hours to arrange a digital consultation and report of your options.
You can choose to arrange a telephone or video dental consultation.
+

GATHERING TREATMENTS

You’re one step closer to your dream smile.

If you’re not redirected in 5 seconds, click here
+

Let’s start

Get a 95% accurate quote from one of our treatment co-ordinators in 48 hours.

HOW DOES IT WORK?

Select your smile goals so we can tailor your treatment plan just for you
Upload a photo of your smile so we can provide an accurate assessment
Finish up with some dental history and preferences.
Back
Get Started
Close up, teeth together {{set_status_class('photo_1', 'text')}}
Close up, open mouth {{set_status_class('photo_2', 'text')}}
Your photos are stored securely and aren’t shared publicly with anyone or any third party.
Submit Photos and continue
Does your current smile affect your confidence?
Do you visit the dentist for regular check-ups?
Have you ever had orthodontic treatment?
Have you ever had dental cosmetic treatment?
Finish & Get Results
+

{{customer_data.first_name}},
you’re a star

Your details have been sent to our clinical team who will prepare your provisional treatment plan.

WHAT HAPPENS NEXT?

You will be contacted in the next 48 hours to arrange a digital consultation and report of your options.
You can choose to arrange a telephone or video dental consultation.
tag on yout theme's header.php Read the detailed step-by-step at https://humbertosilva.com/visual-composer-infinite-image-carousel/ */ // auxiliary code to create triggers for the add and remove class for later use (function($){ $.each(["addClass","removeClass"],function(i,methodname){ var oldmethod = $.fn[methodname]; $.fn[methodname] = function(){ oldmethod.apply( this, arguments ); this.trigger(methodname+"change"); return this; } }); })(jQuery); // main function for the infinite loop function vc_custominfiniteloop_init(vc_cil_element_id){ var vc_element = '#' + vc_cil_element_id; // because we're using this more than once let's create a variable for it window.maxItens = jQuery(vc_element).data('per-view'); // max visible items defined window.addedItens = 0; // auxiliary counter for added itens to the end // go to slides and duplicate them to the end to fill space jQuery(vc_element).find('.vc_carousel-slideline-inner').find('.vc_item').each(function(){ // we only need to duplicate the first visible images if (window.addedItens < window.maxItens) { if (window.addedItens == 0 ) { // the fisrt added slide will need a trigger so we know it ended and make it "restart" without animation jQuery(this).clone().addClass('vc_custominfiniteloop_restart').removeClass('vc_active').appendTo(jQuery(this).parent()); } else { jQuery(this).clone().removeClass('vc_active').appendTo(jQuery(this).parent()); } window.addedItens++; } }); // add the trigger so we know when to "restart" the animation without the user knowing about it jQuery('.vc_custominfiniteloop_restart').bind('addClasschange', null, function(){ // navigate to the carousel element , I know, its ugly ... var vc_carousel = jQuery(this).parent().parent().parent().parent(); // first we temporarily change the animation speed to zero jQuery(vc_carousel).data('vc.carousel').transition_speed = 0; // make the slider go to the first slide without animation and because the fist set of images shown // are the same that are being shown now the slider is now "restarted" without that being visible jQuery(vc_carousel).data('vc.carousel').to(0); // allow the carousel to go to the first image and restore the original speed setTimeout("vc_cil_restore_transition_speed('"+jQuery(vc_carousel).prop('id')+"')",100); }); } // restore original speed setting of vc_carousel function vc_cil_restore_transition_speed(element_id){ // after inspecting the original source code the value of 600 is defined there so we put back the original here jQuery('#' + element_id).data('vc.carousel').transition_speed = 600; } // init jQuery(document).ready(function(){ // find all vc_carousel with the defined class and turn them into infine loop jQuery('.vc_custominfiniteloop').find('div[data-ride="vc_carousel"]').each(function(){ // allow time for the slider to be built on the page // because the slider is "long" we can wait a bit before adding images and events needed var vc_cil_element = jQuery(this).prop("id"); setTimeout("vc_custominfiniteloop_init('"+vc_cil_element+"')",2000); }); jQuery(".dropdown-trigger2,.site-navigation-explore").mouseenter(function () { jQuery(this).closest(".site-header").toggleClass("active2"); jQuery(this).closest(".site-header").toggleClass("contrast"); }); jQuery(".site-navigation-explore,.hiderightmenu").mouseleave(function () { jQuery(".site-header").removeClass("active2"); jQuery(".site-header").removeClass("contrast"); jQuery(".c_darkmode .site-header").addClass("contrast"); }); const SECRET_KEY = "ab6cd84a-3488-4e67-a9aa-cb0eab68f008"; var formemail = jQuery('#wpforms-3276-field_4').val(); const hashedEmail = CryptoJS.AES.encrypt(formemail, SECRET_KEY); jQuery('input#wpforms-3276-field_16').val(hashedEmail); jQuery("#wpforms-form-3276").submit(function(){ //alert(formemail); dataLayer.push({ 'event': 'GA4ID', 'hash': hashedEmail }); }); }); function init_smile_bg_marquee() { if (jQuery(".background-slider").length) { jQuery('.background-slider').slick({ speed: 7000, autoplay: true, autoplaySpeed: 0, centerMode: true, cssEase: 'linear', slidesToShow: 1, slidesToScroll: 1, variableWidth: true, infinite: true, initialSlide: 1, arrows: false, buttons: false }); } } if (jQuery(".background-slider").length) { init_smile_bg_marquee(); } });