Resources For Parents

Learn how to advocate for your child with more confidence and better results

Parent's Library

A free collection of hand-picked resources for parents who want to learn how to create a solid IEP or 504 Plan and get the school to approve it.

  • All you need to know about IEPs and 504 Plans

  • Florida McKay & Gardiner Scholarship information

  • Individuals with Disabilities Education Act (IDEA) explained

  • What to keep in mind while communicating with the school and attending school meetings

  • Placement and disciplinary actions: FAQ

  • Providing student services during COVID-19: FAQ

…and much more.

Additional Resources

IEP Success Tracker

A collection of printable (and editable!) PDFs that help you keep track of your child’s progress and hold the school accountable in case they don’t follow the IEP as they should.

Among other things, IEP Success Tracker helps you track:

  • Communication with the school and the outcomes of each encounter

  • IEP weekly goals and objectives

  • IEP services the school has committed to and the exact days they were provided

  • What works well for your child (and what doesn’t)

  • Your child’s grades

Frequently Asked Questions

It depends on your individual situation. In some cases, there are fixed deadlines set by law that districts have to comply with. In other cases, there is no official timeline.

Based on our experience:

  • If your child doesn’t have an IEP yet, the process usually takes between 90 and 120 school days.
  • If your child has an educational plan, and we are trying to change it, it can take between one and three.

It’s only natural that you’d like to learn about the IEP process and try to talk to the school yourself first.

But from every 10 parents who come to us, 8 have tried doing it on their own but only ended up wasting valuable time.

Here are the three most common reasons why you may not be able to successfully negotiate an IEP without an advocate.

1. You don’t fully understand the game the school district is playing. 

You think the school wants the best for your child and is doing as much as they can. Unfortunately, very often, it can’t be further from the truth.

The main goal of the school district is to spend less money. Providing your child with the help they need means additional expenses. So, the school representatives often try to deceive or manipulate you to get out of providing your child with the support they have the right to. Sad, but true.

2. Free resources may give you the tools but not the strategy to use them effectively.  

You read some articles. You watched a couple webinars. You talked to your friends. And you get a feeling that you’ve understood how it works.

Then, you go into the school meeting… and still feel powerless.

Free resources may give you a general understanding of the IEP process. But only an experienced advocate knows how to create a successful strategy in your particular situation. And, most importantly, how to get the school to act.

3. Your emotions may get in the way.  

It will be impossible for you to ignore your emotions during the school meetings. The school has been dealing with parents like you for years. They know how to manipulate your emotions and will make you frustrated, angry or scared to take away your ability to think and speak clearly.

The school’s tricks won’t work on us.

We know exactly how to make them do what we want. Because we are the master negotiators who can’t be intimidated.

Advocate’s Prayer

“Put the right thoughts in my heart, the right words on my tongue. Remind me that I am just a vessel, Lord, to carry your word to others. Let me be strong for this child and this family. When it seems difficult To voice opposition or to be firm in a request, help me not to waiver…”

The IEP Advocate Blog

Find help with expert articles, tips, and tricks, and stories of how parents just like you have helped their children get the education they deserve.

You Don't Have To Do This Alone

Join 10,000+ Empowered Parents

Get practical tips on how to get the school to help your child, sent directly to your inbox twice a month.

[gravityform id="1" title="false" description="false" ajax="true" tabindex="49" field_values="check=First Choice,Second Choice"]
<div class='gf_browser_unknown gform_wrapper gravity-theme' id='gform_wrapper_1' ><form method='post' enctype='multipart/form-data' target='gform_ajax_frame_1' id='gform_1' action='/free-resources/' ><div class='gf_invisible ginput_recaptchav3' data-sitekey='6LdHX_ocAAAAANPA7hLXwM3JCtLpSRAFLNxPYz7F' data-tabindex='49'><input id="input_cd00638f3390ae35f984c721a3434f94" class="gfield_recaptcha_response" type="hidden" name="input_cd00638f3390ae35f984c721a3434f94" value=""/></div> <input type='hidden' class='gforms-pum' value='{"closepopup":false,"closedelay":0,"openpopup":false,"openpopup_id":9060}' /> <div class='gform_body gform-body'><div id='gform_fields_1' class='gform_fields top_label form_sublabel_below description_below'><fieldset id="field_1_1" class="gfield gfield_contains_required field_sublabel_hidden_label field_description_below gfield_visibility_visible" ><legend class='gfield_label gfield_label_before_complex' >Name<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></legend><div class='ginput_complex ginput_container no_prefix has_first_name no_middle_name has_last_name no_suffix gf_name_has_2 ginput_container_name' id='input_1_1'> <span id='input_1_1_3_container' class='name_first' > <input type='text' name='input_1.3' id='input_1_1_3' value='' tabindex='51' aria-required='true' placeholder='First' /> <label for='input_1_1_3' class='hidden_sub_label screen-reader-text'>First</label> </span> <span id='input_1_1_6_container' class='name_last' > <input type='text' name='input_1.6' id='input_1_1_6' value='' tabindex='53' aria-required='true' placeholder='Last' /> <label for='input_1_1_6' class='hidden_sub_label screen-reader-text'>Last</label> </span> </div></fieldset><div id="field_1_2" class="gfield gf_left_half gfield--width-half gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_1_2' >Email<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label><div class='ginput_container ginput_container_email'> <input name='input_2' id='input_1_2' type='text' value='' class='large' tabindex='55' aria-required="true" aria-invalid="false" /> </div></div><div id="field_1_3" class="gfield gf_right_half gfield--width-half gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_1_3' >Phone<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label><div class='ginput_container ginput_container_phone'><input name='input_3' id='input_1_3' type='text' value='' class='large' tabindex='56' aria-required="true" aria-invalid="false" /></div></div><div id="field_1_5" class="gfield gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_1_5' >What Are You Looking For?<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label><div class='ginput_container ginput_container_select'><select name='input_5' id='input_1_5' class='large gfield_select' tabindex='57' aria-required="true" aria-invalid="false" ><option value='I just have a quick question. I don&#039;t need an advocate.' >I just have a quick question. I don&#039;t need an advocate.</option><option value='I need help. I might need to hire an advocate, but I&#039;m not sure.' >I need help. I might need to hire an advocate, but I&#039;m not sure.</option><option value='I am ready to hire an advocate. Please let me know what to do next.' >I am ready to hire an advocate. Please let me know what to do next.</option><option value='I&#039;m moving to Florida and I need my child’s IEP reviewed.' >I&#039;m moving to Florida and I need my child’s IEP reviewed.</option></select></div></div><div id="field_1_4" class="gfield field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_1_4' >What&#039;s Going On?</label><div class='ginput_container ginput_container_textarea'><textarea name='input_4' id='input_1_4' class='textarea small' tabindex='58' aria-invalid="false" rows='10' cols='50'></textarea></div></div><div id="field_1_6" class="gfield field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_1_6' >CAPTCHA</label><div id='input_1_6' class='ginput_container ginput_recaptcha' data-sitekey='6LfqyUUdAAAAAO_oYyOK9VGfUtvRf_ImDKTjIaqM' data-theme='light' data-tabindex='59' data-badge=''></div></div></div></div> <div class='gform_footer top_label'> <input type='submit' id='gform_submit_button_1' class='gform_button button' value='Submit' tabindex='60' onclick='if(window["gf_submitting_1"]){return false;} window["gf_submitting_1"]=true; ' onkeypress='if( event.keyCode == 13 ){ if(window["gf_submitting_1"]){return false;} window["gf_submitting_1"]=true; jQuery("#gform_1").trigger("submit",[true]); }' /> <input type='hidden' name='gform_ajax' value='form_id=1&amp;title=&amp;description=&amp;tabindex=49' /> <input type='hidden' class='gform_hidden' name='is_submit_1' value='1' /> <input type='hidden' class='gform_hidden' name='gform_submit' value='1' /> <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> <input type='hidden' class='gform_hidden' name='state_1' value='WyJbXSIsImZhM2U0OTA5MTFhYjA0NWI1NDI1OGUwYmM3OWMzYjdhIl0=' /> <input type='hidden' class='gform_hidden' name='gform_target_page_number_1' id='gform_target_page_number_1' value='0' /> <input type='hidden' class='gform_hidden' name='gform_source_page_number_1' id='gform_source_page_number_1' value='1' /> <input type='hidden' name='gform_field_values' value='check=First+Choice%2CSecond+Choice' /> </div> </form> </div> <iframe style='display:none;width:0px;height:0px;' src='about:blank' name='gform_ajax_frame_1' id='gform_ajax_frame_1' title='This iframe contains the logic required to handle Ajax powered Gravity Forms.'></iframe> <script> gform.initializeOnLoaded( function() {gformInitSpinner( 1, 'https://theiepadvocate.com/wp-content/plugins/gravityforms/images/spinner.svg' );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){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://theiepadvocate.com/wp-content/plugins/gravityforms/images/spinner.svg' );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;}setTimeout(function(){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());}, 50);}else{jQuery('#gform_1').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger('gform_post_render', [1, current_page]);} );} ); </script>