You have a page that already looks right - a client's old site, a static HTML landing page, or a section on someone else's site you'd like to start from - and you need it in Elementor. There's no "Import website" button in WordPress, so people end up rebuilding the whole thing widget by widget.
There are four ways to get an existing website or HTML page into Elementor. They differ a lot in how long they take and how much of the original survives.
The short answer
| Method | Time per section | Keeps the design? | Responsive? | Needs Elementor Pro? |
|---|---|---|---|---|
| Rebuild by hand with widgets | 30-90 min | Roughly | You redo it | No |
| Paste source into an HTML widget | 5 min | Usually breaks | Rarely | No |
| Design-file converters (Figma to Elementor) | 10-20 min | Only if you have the Figma file | Partly | Varies |
| Export the live section as an Elementor template | Under a minute | Yes | Yes | No |
If the page is already live in a browser, exporting it is the fastest route: MiroMiro's HTML to Elementor converter does it in under a minute. The details are below.
1. Rebuild it by hand with Elementor widgets
The traditional route: open the original page next to the Elementor editor and recreate it - a container, a heading widget, a text widget, a button, then match every font size, color and spacing value by eye or from DevTools.
Good for: small sections, or when you want every piece to be a native widget your client can drag around.
The catch: it's slow, and "close enough" adds up. Line heights, letter spacing and breakpoints are the first things to drift, and you rebuild the mobile layout separately.
2. Paste the source into an HTML widget
Elementor's free HTML widget accepts raw markup, so the obvious shortcut is View Source, copy, paste.
Why it usually fails: the HTML you copy is only half the page. The styles live in separate CSS files, class names from the original framework (Tailwind, Webflow, a theme) mean nothing in your WordPress install, and modern sites render much of their markup with JavaScript, so View Source doesn't even match what you see. You get unstyled text, or a layout that collapses on mobile.
It works for a small, self-contained snippet whose styles are inline. For a real section, it rarely does.
3. Convert from a design file
If you own the original design in Figma, there are Figma-to-Elementor plugins that map frames to widgets. That's a different job from converting a website: it only helps when you have the source file, and the result depends on how cleanly the file was built (auto layout, named layers).
For a site that only exists live in the browser, there's no design file to convert.
4. Export the live section as an Elementor template
This is the method MiroMiro was built for. Instead of copying source or rebuilding, it reads the section as your browser renders it - the real layout, computed styles, fonts, colors, images and responsive rules - and packages it as an Elementor template (.json) that WordPress imports natively.
Here's the whole process:
- Install MiroMiro from the Chrome Web Store.
- Open the website and click Export in the MiroMiro panel. Click the section you want - a hero, pricing table, footer - or use Export full page.
- Open the Download menu and choose Elementor template. You get a
.jsonfile. - In WordPress, go to Templates → Saved Templates → Import Templates and choose the file.
- Open any page in Elementor, click the folder icon (Add Template), go to My Templates and click Insert.
The section appears looking like the original, on desktop and on phones. It works with the free Elementor plugin.
The json export is a game changer for my process. Claude + Elementor MCP + Miromiro json and assets = Blazing fast production A must have for native elementor integration
I'm thrilled! If you work with WordPress Elementor, a must-have tool!
See the full walkthrough with a video on the HTML to Elementor converter page. Moving a whole Webflow or Framer site? Here's the full migration to WordPress, content and redirects included.
What you get, honestly
- One HTML block, not separate native widgets. You can edit text, links and images inside it, but you won't get a heading widget and a button widget to drag around. That's the trade-off that keeps it pixel-true: automatic widget-by-widget conversion is exactly where spacing and responsiveness get lost.
- Images and fonts load from the original URLs. For a production site, upload your own images to the Media Library and swap them in.
- Any public website works - React, Next.js, Webflow, Framer, WordPress or plain HTML - because MiroMiro reads the rendered page, not the source.
If you'd rather have plain code than an Elementor template - say you're building in Cursor or a custom theme - the same export gives you Tailwind, React, Vue or HTML + CSS instead.
Which method should you use?
- You want native, drag-and-drop widgets for a client to edit: rebuild by hand, but export the section first and use it as your exact reference for spacing and colors.
- You have the Figma file: a Figma-to-Elementor plugin.
- The page is live and you want it in Elementor now: export it as an Elementor template.
Whichever route you take, treat someone else's site as a starting point: replace the copy, images and branding with your own before you publish.
¿Listo para acelerar tu flujo de trabajo?
Únete a más de 8.000 diseñadores y desarrolladores que ahorran horas cada semana con MiroMiro.
One payment, every future update included.
Soraia · Fundadora de MiroMiro
Soraia desarrolla MiroMiro, una extensión de Chrome que usan más de 10.000 diseñadores y desarrolladores para extraer código limpio, design tokens y recursos de webs en vivo. Estas guías nacen de probar el flujo de trabajo a diario en webs reales como Stripe, Linear y Vercel.
Sígueme en XNo te fíes solo de nosotros
¿No estás seguro de si MiroMiro es para ti?
Deja que tu IA favorita lo piense. Pulsa un botón y mira qué dice sobre extraer código, tokens de diseño y assets de cualquier web.
