Avoid triggering a Wage-Hour audit

Reed Tinsley
Reed Tinsley

Posted on Jul 3, 2026
Written by Reed Tinsley, CPA | August 13, 2009 Here are four common Fair Labor Standards Act (FSLA) problems you should be aware of: 1. Worker classification. You cannot avoid overtime pay simply by paying employees a salary and classifying them “exempt.” To avoid misclassification, know what jobs are exempt (regardless of whether they are salaried or paid by the hour), then review job descriptions and how each job is actually performed. 2. Docking pay. An exempt worker docked for a partial-day's absence may lose his/her exempt status, costing you retroactive overtime pay, unless the docking is connected to an FMLA-related leave. 3. Voluntary or unauthorized work. Nonexempt employees must be paid for time worked, voluntary or not. Even if your policy requires that a manager approve paid overtime, your firm must still pay at least 1½ x the employee’s hourly rate for each hour worked over 40 hours in the workweek. 4. Calculating overtime pay. FLSA requires that overtime pay be based on the employee’s regular rate of pay, which is often higher than the base rate because it includes nondiscretionary bonuses and other payments. Example: Nondiscretionary bonuses are those required under a contract, agreement or promise, express or implied. These include bonuses for production, work quality or to get someone to take or stay on a job and bonuses that employees have come to expect (other than holiday bonuses). A nondiscretionary bonus given to hourly employees must be added to their gross pay in the week it is earned and must be included when calculating their pay for overtime purposes. Illustration: Marina's pay rate is $9/hr. plus production bonuses. One week she works 43 hours and earns a $27 bonus. Marina’s regular pay: $387 for the week ($9/hr. x 43 hours) + $27 bonus = $414 straight-time pay. Marina’s overtime pay: $414 earned for the week (including the nondiscretionary bonus) ÷ 43 hours worked = $9.63 regular rate x 50% premium rate = $4.82 x 3 hours overtime = $14.46 premium pay. Marina’s gross pay: $414 straight time pay + $14.46 premium pay = $428.46 gross pay for the week. 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. EmailThis 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(); } } );} );