Find and replace in Elementor JSON

Paste an exported template or the value of _elementor_data, change what you need and download valid JSON. You see every change before applying it, and the file never leaves your browser.

Elementor JSONIn your browser

    What about 200 pages at once?See the plugin →

    How to use the Elementor JSON find and replace tool

    01

    Paste or upload the JSON

    A template exported from Elementor, or the value of _elementor_data copied from the database. No file at hand? Try the example.

    02

    Search and review

    Type what to find and what to replace it with. Each match shows which widget and which setting it is in, with before and after.

    03

    Replace and download

    Click “Replace” and download or copy the file. The result is still valid JSON and keeps the escaping WordPress uses.

    What changes in an Elementor JSON template

    Values only, never the structure

    The tool parses the JSON before searching and replaces inside text values. Keys and the fields that hold the template together (id, elType, widgetType, version and type) are left alone, so the result can be imported again.

    Every match, in its widget

    The list shows the widget type, its ID and the setting that holds the text: title in a heading, text in a button, link.url in a link or icon_list.2.text in the third item of a list.

    WordPress escaping kept

    If the JSON comes the way WordPress stores it in _elementor_data, with accented letters as \u00e9 and slashes as \/, the output is escaped the same way. You can paste it straight back into the database.

    Match case and whole word

    Two options fine-tune the search: match case avoids changing “Price” when you search “price”, and whole word avoids touching “prices” or “price-table”.

    How an Elementor template JSON is built

    Elementor stores every page and template as a tree of elements. In an exported file that tree sits under content; in the database, in the page’s _elementor_data field.

    Each element has an id, an elType (container, section, column or widget), a widgetType if it is a widget, its settings and, inside elements, its children. The text you see on the page lives in settings: title in a heading, editor in a text editor, text in a button and url inside link for links.

    To get a template’s JSON, go to Templates › Saved Templates and use “Export Template”. To upload it again, use “Import Templates” on the same screen. If you edit _elementor_data directly in the database, back it up first.

    Plugin no. 1Free + Pro

    What about 200 pages at once?

    This tool works on one file. Smart Search & Replace does the same inside WordPress, across every page, template and post, with preview, a revision on every page and undo.

    See the plugin →

    What this tool doesn't do

    • It changes any text value that matches, including CSS classes, colors or image URLs if they contain your search. Review the list before replacing. The plugin, by contrast, only touches visible text and links.
    • It doesn't check that the template works with your Elementor version.
    • It doesn't touch your site: you import or paste the changed JSON yourself.
    • It doesn't look inside dynamic tags, which store their content encoded.

    Elementor JSON: frequently asked questions

    Why doesn't Better Search Replace find my text in Elementor?

    Because Elementor stores its content as escaped JSON: an accented letter is saved as \u00e9 and a slash as \/. “Teléfono” sits in the database as Tel\u00e9fono, so a literal search misses it. This tool reads the JSON before searching.

    What is _elementor_data?

    It is the database field (in wp_postmeta) where Elementor stores each page’s content: the element tree as JSON, with accents and slashes escaped.

    How do I import the changed template?

    In the WordPress dashboard, Templates › Saved Templates › Import Templates, then pick the downloaded file. It appears as a new template you can insert into any page.

    Is my file uploaded anywhere?

    No. Everything happens in your browser; the page sends the content to no server.

    Can I change the domain of every image and link?

    Yes: search for the old domain and replace it with the new one. Every URL containing it changes, images and buttons included.