This paper presents a practical extension to the classical gradient-based extremum seeking control for the case when the disturbances responsible for the changes in the extremum of a related performance function can be measured. The additional information is used to improve accuracy, convergence speed and robustness of the underlying ESC scheme. Based on the disturbance measurements a map between them and the optimal inputs is iteratively constructed and used as an extremum seeking feedforward. A supervising state-machine is designed to regulate feedforward and search processes ensuring the latter is conducted in the close vicinity of an extremum. The search is based on the sinusoidal input perturbation introduced each time the disturbance is detected and removed once the optimal set-point is identified. Simulation results for the cases of photovoltaic and turbine driven electrical generator systems demonstrate the benefits of the presented design.