Basic Steps to Handle a Patient’s Complaint With Your Physician Medical Practice
Posted on Jul 3, 2026
Written by Reed Tinsley, CPA | October 9, 2018 The saying “The customer is always right” holds true in medical practice, too. Just substitute the word “patient” for “customer.” With this in mind, your number-one concern and customer-service goal should be problem solving to meet the patient’s needs. Here are 10 steps to take whenever you or a staff member encounters a patient with a complaint. Listen without interruption. Instruct staff to hear out the patient before responding. Don’t get defensive. Remind employees that in most cases, an irate patient is unhappy with the situation, not with the person to whom he or she is complaining. This means the staff member needs to keep his or her emotions in check and remember not to take the complaints personally. Apologize. An apology goes a long way toward defusing a situation. The employee doesn’t need to admit any wrongdoing to apologize. Instead, he or she can say, “Mr. Jones, I’m really sorry your expectations weren’t met today.” Express empathy. Tell the patient you would feel the same way in a similar situation. This can help calm the patient and defuse the situation. Ask questions to clarify. Instruct the employee to repeat the patient’s concern in the form of a question. For example, “Mr. Jones, are you saying that you’re concerned about coming here next week for another 10 a.m. appointment when you had an appointment scheduled for that time today and weren’t seen until 11:15?” Find out what the customer wants. The employee can’t help solve the problem unless he or she knows the response the patient is looking for. The only way to find out is to ask the patient directly. “Mr. Jones, please tell me how we can resolve this situation to your satisfaction.” Explain what you can do. Often, the automatic response is to say, “No, I can’t do that.” Instead, focus on the positive, telling the patient what you can do. For example, “Mr. Jones, if you call our office before leaving for your next appointment, the receptionist will gladly tell you whether Dr. Smith is on schedule so you can adjust your arrival time accordingly.” Take notes and maintain a record. Instruct staff to write brief descriptions of any patient problems they encounter. Keep the note in the patient’s medical record. Take action. If an employee promises action on the patient’s behalf, that person is responsible for seeing that it takes place, even if the actual task falls within another employee’s job description. When that happens, instruct the staffer to ask the other staff member to do the job or offer to do it himself. Follow up. The staffer who first fields a concern should always make sure the patient’s needs are ultimately met. About the AuthorReed Tinsley CPAThis article is written by Reed Tinsley, a Houston, TX-based CPA with over 30 years of experience advising physicians and medical practices across Texas and the United States. Reed holds certifications as a Certified Valuation Analyst (CVA), Certified Healthcare Business Consultant (CHBC), and Certified Financial Planner (CFP), specializing exclusively in the healthcare sector. He is a published author, nationally recognized speaker, and trusted advisor to physicians on accounting & tax, practice management, and financial planning. Schedule a Free Consultation. .author-info h3 { font-weight: 700; color: var(--dark-blue); margin: 0; } .author-info { display: flex; flex-direction: column; gap: var(--mp-s); margin: var(--mp-m) 0; border: 1px solid var(--dark-blue); padding: var(--mp-m); line-height: 1.8; background: #F1F2F2; } .author-info--title { display: flex; gap: var(--mp-s); } .author-info--photo { border-radius: 500px; width: 100px; } .author-info a { color: var(--dark-blue); } .author-info a:hover { color: var(--blue); } Have questions? I’m here to help. X/TwitterThis field is for validation purposes and should be left unchanged.Name(Required)Email(Required) PhoneMedical Specialty(Required)This field is hidden when viewing the formHow did you find us?(Required)How did you hear about Reed?(Required)How did you hear about Reed?*AI SearchGoogle SearchLinkedInReferralOtherWhich AI lead you to Reed?(Required)Which AI lead you to Reed?*ChatGPTClaudeOther AI ToolPlease share who referred youTell us the other way you heard about ReedWhich is greater, 2 or 5?(Required)What is 4 + 7?(Required)Message(Required) gform.initializeOnLoaded( function() {gformInitSpinner( 1, 'https://www.rtacpa.com/wp-content/plugins/gravityforms/images/spinner.svg', true );jQuery('#gform_ajax_frame_1').on('load',function(){var contents = jQuery(this).contents().find('*').html();var is_postback = contents.indexOf('GF_AJAX_POSTBACK') >= 0;if(!is_postback){return;}var form_content = jQuery(this).contents().find('#gform_wrapper_1');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_1').length > 0;var is_redirect = contents.indexOf('gformRedirect(){') >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;var mt = parseInt(jQuery('html').css('margin-top'), 10) + parseInt(jQuery('body').css('margin-top'), 10) + 100;if(is_form){form_content.find('form').css('opacity', 0);jQuery('#gform_wrapper_1').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_1').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_1').removeClass('gform_validation_error');}setTimeout( function() { /* delay the scroll by 50 milliseconds to fix a bug in chrome */ }, 50 );if(window['gformInitDatepicker']) {gformInitDatepicker();}if(window['gformInitPriceFields']) {gformInitPriceFields();}var current_page = jQuery('#gform_source_page_number_1').val();gformInitSpinner( 1, 'https://www.rtacpa.com/wp-content/plugins/gravityforms/images/spinner.svg', true );jQuery(document).trigger('gform_page_loaded', [1, current_page]);window['gf_submitting_1'] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content){confirmation_content = contents;}jQuery('#gform_wrapper_1').replaceWith(confirmation_content);jQuery(document).trigger('gform_confirmation_loaded', [1]);window['gf_submitting_1'] = false;wp.a11y.speak(jQuery('#gform_confirmation_message_1').text());}else{jQuery('#gform_1').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger("gform_pre_post_render", [{ formId: "1", currentPage: "current_page", abort: function() { this.preventDefault(); } }]); if (event && event.defaultPrevented) { return; } const gformWrapperDiv = document.getElementById( "gform_wrapper_1" ); if ( gformWrapperDiv ) { const visibilitySpan = document.createElement( "span" ); visibilitySpan.id = "gform_visibility_test_1"; gformWrapperDiv.insertAdjacentElement( "afterend", visibilitySpan ); } const visibilityTestDiv = document.getElementById( "gform_visibility_test_1" ); let postRenderFired = false; function triggerPostRender() { if ( postRenderFired ) { return; } postRenderFired = true; gform.core.triggerPostRenderEvents( 1, current_page ); if ( visibilityTestDiv ) { visibilityTestDiv.parentNode.removeChild( visibilityTestDiv ); } } function debounce( func, wait, immediate ) { var timeout; return function() { var context = this, args = arguments; var later = function() { timeout = null; if ( !immediate ) func.apply( context, args ); }; var callNow = immediate && !timeout; clearTimeout( timeout ); timeout = setTimeout( later, wait ); if ( callNow ) func.apply( context, args ); }; } const debouncedTriggerPostRender = debounce( function() { triggerPostRender(); }, 200 ); if ( visibilityTestDiv && visibilityTestDiv.offsetParent === null ) { const observer = new MutationObserver( ( mutations ) => { mutations.forEach( ( mutation ) => { if ( mutation.type === 'attributes' && visibilityTestDiv.offsetParent !== null ) { debouncedTriggerPostRender(); observer.disconnect(); } }); }); observer.observe( document.body, { attributes: true, childList: false, subtree: true, attributeFilter: [ 'style', 'class' ], }); } else { triggerPostRender(); } } );} );
Create a job alert for instant notification of new roles that fit your search criteria