Juxtapose JS

Easy-to-make frame comparisons.

Make a Juxtapose

Juxtapose helps storytellers compare two pieces of similar media, including photos, and GIFs. It’s ideal for highlighting then/now stories that explain slow changes over time (growth of a city skyline, regrowth of a forest, etc.) or before/after stories that show the impact of single dramatic events (natural disasters, protests, wars, etc.).

Tips & tricks

  1. Use images that are the same size.
  2. Export your images to web quality to improve download time.
  3. Align your images so that major elements are in alignment.

Create a Juxtapose

It is free, easy to use, and works on all devices. All you need to get started are links to the images you'd like to compare.


Left Image
Right Image


Preview  Publish
Share Link

To embed in a Medium blog post, copy the code in the box below and paste it on a line by itself where you want your juxtapose to appear. (Learn more about oEmbed.) If you update the settings, don't forget to click "Publish" again.


Copy the code in the box below and paste it into your web page or CMS. If you update the settings, don't forget to click "Publish" again.

Preview Embed


Need help? First, please be sure to look at our list of frequently asked questions below.

If you don't find an answer there, try our support forums or use our tech support web form. Please be clear with your question and, if appropriate, include a link to a page which shows the issue with which you need help. We can only answer support questions in English. We try to be prompt, but please understand that we do not have a dedicated tech support staff.

Find a bug? If you are confident you have found a bug, please report it as a GitHub issue. Be sure to include detailed instructions on how to reproduce the bug. If you're not sure, please start with the tech support system.

Frequently asked questions

  • Do I need to know code to use JuxtaposeJS?

    Absolutely not. JuxtaposeJS is friction-free. If you have the links to two images, you are ready to use JuxtaposeJS.
  • Can I customize what JuxtaposeJS looks like?

    In it's simplest form, JuxtaposeJS is embedded using an <iframe> tag. In this form, there's no way to customize the appearance.

    If you are comfortable integrating markup and javascript into your own page, you can go beyond the <iframe>. JuxtaposeJS is designed with a minimalist style meant to work with most websites. If you want to customize the appearance, you can change most of how it looks with CSS rules. Read more on the Github Wiki.

  • Does JuxtaposeJS work on iPhone, iPad, and other iOS devices?

    Yes, JuxtaposeJS works normally on iOS devices.
  • Can I help build new features for JuxtaposeJS?

    Absolutely. Fork the project and get involved. Send us feedback. Help us make JuxtaposeJS the tool you need and want it to be.

Storytelling Tools

We build easy-to-use tools that can help you tell better stories.

View More