Photo Sphere Viewer is a WordPress plugin that embeds interactive 360° content — panoramas, multi-scene virtual tours, 360° video and AR-ready 3D models — directly in your pages. Visitors drag, pinch and zoom to look around. You add a viewer with a block-editor block, an Elementor widget or a shortcode. Everything is hosted on your own site: no iframes, no third-party embed account, no watermark.
The free version has no limit on panoramas, tour scenes, videos or models, and includes info hotspots, auto-rotation, gyroscope viewing on phones and 360° video autoplay.
Photo Sphere Viewer Pro adds unlimited hotspots with photos, a scene gallery and compass for tours, and full-resolution image loading for drone panoramas.
Try it before you install: click
Live Preview above to open a working panorama with hotspots and a three-scene virtual tour in your browser.
At a glance
- What it shows: 360° panoramas (equirectangular JPEG/PNG), virtual tours, 360° video (MP4) and 3D models (.glb / .gltf) with an AR button on phones
- How you add it: the 360° Panorama and 360° Virtual Tour blocks, four Elementor widgets, or the
[psv], [psv_tour], [psv_video] and [psv_ar] shortcodes
- Who it is for: real estate agents, hotels and vacation rentals, 360° and drone photographers, museums and campuses, WooCommerce stores, architects
- Works with: any stitched equirectangular image — DJI, Ricoh Theta, Insta360, GoPro MAX, Qoocam, Kandao, Google Street View and Android Photo Sphere exports
- Price: free. An optional Pro add-on adds unlimited hotspots, tour navigation and full-resolution loading, with a 30-day money-back guarantee
Four viewers in one plugin
360° panorama viewer — Upload an equirectangular photo and visitors look around it on desktop or mobile. Add info hotspots that label what they are looking at, let it auto-rotate, and set the field of view, zoom limits, movement speed and starting angle. The toolbar carries zoom, auto-rotate, caption, download, fullscreen and a gyroscope button for phones.
Virtual tour builder — Link as many scenes as you want with 3D arrows. In the block editor you place each arrow by clicking on the photo where the doorway is. Each scene has its own caption and starting view, and you choose which scene opens first. A good fit for property walkthroughs, hotel tours and museum floor plans.
360° video player — The same look-around interaction for an equirectangular MP4, with play/pause, seek and volume controls, plus muted autoplay and loop.
AR 3D model viewer — Embed a .glb or .gltf model with Google's
<model-viewer>. Visitors rotate it in the page, and phones that support AR get a button to place it in their room. Set a poster image, auto-rotate, shadow intensity, HDR environment lighting, a skybox background and alignment.
How to add a 360° panorama to WordPress
- Install and activate Photo Sphere Viewer.
- Upload your equirectangular photo to the Media Library.
-
Add it to a page in whichever editor you use:
-
Block editor (Gutenberg): insert the 360° Panorama block, pick the photo, then set the caption, height, toolbar and hotspots in the sidebar. For a walk-through, insert the 360° Virtual Tour block and pick several photos.
- Elementor: drag the Photo Sphere Viewer widget into your layout and choose the image.
- Anywhere else: open Photo Sphere Viewer in the admin menu, choose Shortcode, build one visually and paste it into a post, widget area or WooCommerce product description.
- Publish. The viewer is responsive and touch-ready by default.
Tours, 360° video and 3D models work the same way through their own Elementor widgets (PSV Virtual Tour, PSV 360° Video, AR 3D Viewer) or the Shortcode Builder.
What you get for free
- All four viewers, with unlimited panoramas, tour scenes, videos and 3D models
- No watermark on your viewers
- Info hotspots — up to five per panorama, each with a label on hover and a panel with text and a link
- Auto-rotation on panoramas and tours, with an option to start on load
- Gyroscope viewing — phone visitors look around by moving their device
- Zoom, caption, download and fullscreen toolbar buttons
- Virtual tours with 3D navigation arrows and per-scene captions and starting angles
- 360° video with play, seek and volume controls, muted autoplay and loop
- 3D models with a mobile AR button, poster image, auto-rotate, shadows, HDR lighting and a skybox
- The 360° Panorama and 360° Virtual Tour blocks — place hotspots and tour arrows by clicking on the photo — four Elementor widgets and a visual Shortcode Builder
- Field of view, starting yaw and pitch, mouse-wheel zoom, drag, two-finger touch and fisheye options
- Styling for the toolbar background, caption colour, typography and alignment
- Width and height in px, %, vh or vw
- Translation-ready, and works with WPML and Polylang
What Pro adds
Upgrade when a tour has to sell — a listing, a hotel, a venue:
- Unlimited info hotspots, with a photo in each panel — label every room and feature, and show the floor plan, the view or the finish right where the visitor is looking
- Full-resolution originals — WordPress downsizes any upload over 2560px to a
-scaled copy. Pro loads the original instead, so a 40MP drone panorama keeps its detail
- Scene gallery bar and compass overlay for virtual tours — visitors jump straight to a room and see which way they face
- Panorama gallery, on-screen move buttons and a description panel
- Restricted viewing angle to hide a tripod, ceiling or anything else out of frame
- Custom camera orbit and gesture locks for 3D models
- Priority email support from the WPXERO team
Pro is an add-on to this plugin, so everything you have already built keeps working. It comes with a 30-day money-back guarantee.
See Pro plans and pricing
Built for real camera gear
- DJI and other drone panoramas — high-megapixel aerial panoramas are exactly what WordPress's 2560px
-scaled copy damages. Pro's full-resolution loading serves the original upload
- Ricoh Theta, Insta360, GoPro MAX, Qoocam, Kandao — any properly stitched equirectangular JPEG or PNG works without a special export
- Google Street View and Android Photo Sphere — upload the file and go
Who uses it
- Real estate — property walkthroughs and listing tours
- Hotels and vacation rentals — show rooms before guests book
- 360° and drone photographers — portfolios that keep their detail
- Museums, campuses and venues — self-guided tours
- WooCommerce stores — 360° product views and AR models in product descriptions
- Architects and interior designers — spaces clients can explore
Compatibility
Works with the block editor, Elementor and Elementor Pro, WooCommerce, Yoast SEO, Rank Math, WPML, Polylang, WP Rocket, LiteSpeed Cache and W3 Total Cache. The viewer scripts load only on pages that contain a viewer.
2.4.0 [October 27, 2026]
- Added: Info hotspots are free — up to five per panorama, with a label, text and a link. Pro removes the limit and adds a photo to each panel
- Added: A one-time, dismissible request for a WordPress.org review, shown only after a viewer has been live for a few days. It also links to the support forum for anyone who is stuck
- Added: 360° Virtual Tour block — pick several photos and they are linked in order; click Place arrow to put each link where the doorway is, and Set starting view for each scene. Switchable from the Block Editor screen like the other components
- Added: Place on panorama for hotspots in the 360° Panorama block — position a hotspot by clicking on the photo instead of typing angles
- Added:
autorotate_autoplay attribute on [psv_tour]
- Fixed:
[psv_tour scenes='[…]'], and hotspots / gallery JSON on [psv], did not work in posts — WordPress ends a shortcode at its first ], so the attribute was cut short and the tour showed "Please provide a scenes attribute". Existing posts are repaired automatically when displayed; the Shortcode Builder now writes these attributes in a bracket-free b64: form that works everywhere, including Elementor's Shortcode widget
- Added: A WordPress Playground blueprint, so the plugin page can offer a Live Preview with a working panorama and virtual tour
- Changed: Auto-rotation is free again on every viewer — the Elementor widgets, the block and the shortcodes. Existing panoramas show the auto-rotate button where it was switched on; nothing starts rotating unless "Autoplay" is enabled
- Changed: Gyroscope viewing, 360° video autoplay and loop, and 3D HDR lighting and skybox are free
- Changed: Redesigned dashboard — larger, easier-to-read screens with a top bar for Docs and Upgrade. The "Integration" menu item is now "Dashboard"
- Changed: Pro now centres on what sells a property or venue tour: unlimited hotspots with photos, full-resolution originals, the scene gallery and compass, the panorama gallery, restricted viewing angles, camera orbit and priority support. Pro sites render exactly as before
- Fixed: The gyroscope never switched on — its toolbar button was only added to the viewer's default toolbar, which no Photo Sphere Viewer embed uses
- Fixed: Info hotspots had no styling on live sites — the built stylesheet holding the hotspot markers and panels was registered under the same handle as the viewer's own CSS, so WordPress dropped it. Both now load
- Fixed: 360° video autoplay and mute did nothing, and video always looped. Photo Sphere Viewer 5 takes these on the video adapter, not the video plugin; "Loop" off now plays once
- Fixed: Auto-rotate delay (Elementor widget, shortcode builder and
autorotate_delay) and zoom speed had no effect
- Fixed: A virtual tour with a start scene number past the last scene, or an arrow to a scene with no photo, showed an empty box. It now starts at the first scene and skips the broken arrow
- Fixed:
width="600px" and similar values on the shortcodes produced an invalid size; numbers with a unit are now kept as written
- Security: Captions, descriptions and scene names in shortcodes and widgets are filtered for HTML, and viewer settings are encoded so entity-encoded markup can no longer run script
- Improved: A missing Freemius SDK no longer stops the site with a fatal error; the plugin runs without licensing instead
- Improved: The Virtual Tour widget explains what is missing when no scene has a photo, and a viewer that fails to start (for example without WebGL) says so instead of leaving a blank box
- Removed: The Elementor widget's Longitude Range, Latitude Range, Zoom Button Increment and Capture Cursor controls. Photo Sphere Viewer 5 ignores all four; Pro's restricted viewing angles replace the ranges
2.3.0 [September 11, 2026]
- Added: 360° Panorama block for the block editor — pick a photo, then set the caption, height, toolbar and info hotspots from the sidebar
- Added: Block Editor card on the Integration screen, with its own guide and on/off switch. Each integration screen now lists only its own components
- Added: Info hotspots (Pro) — clickable points on a panorama showing a label on hover and a panel with a photo, text and a link. Available in the block, the Elementor widget, the shortcode builder, and as a
hotspots attribute on [psv]
- Added: A first-run screen with a live, draggable demo panorama, so a new install shows what the plugin does before asking for any setup. It disappears once you save your first shortcode
- Added: Locked Pro controls now name the feature, say what it does for your visitors, and link to the plans with the price shown
- Changed: Fullscreen is free on every viewer, and zoom, caption and download are free in virtual tours and 360° video — these are basic viewer navigation
- Changed: Auto-rotation is a Pro feature on every surface — the Elementor widgets, the block and the shortcodes — rather than being free in some places and paid in others
- Changed: The
[psv] shortcode honours the same Free/Pro boundary as the Elementor widgets. Move buttons, the description panel and the panorama gallery are Pro there too, and use_original — full-resolution loading — is a Pro feature on both surfaces. Free panoramas load WordPress's standard image, as they already did in the Elementor widget
- Changed: Upgrade links open Freemius checkout inside the WordPress dashboard when that page is available on your site, and the plans page otherwise
- Changed: Promotional messaging is held back for the first week after activation
- Changed: The plugin's own admin screen no longer hides WordPress's update and security notices, or licence messages — only unrelated plugins' notices are tidied away
- Changed: Deleting the plugin now removes its own data — saved shortcodes, options and transients, across every site on a network. Deactivating still leaves everything in place
- Fixed: The Pro upgrade panel did not appear at all in the Elementor editor on sites running Elementor Pro, because it relied on a control type Elementor only registers when Pro is absent
- Fixed:
[psv_video] produced an empty viewer — the shortcode path never attached the 360° video adapter
- Fixed: Pro video autoplay and loop had no effect; both were resolved server-side and then discarded before reaching the player
- Fixed: Turning off "MouseWheel" or "Mouse Move" did nothing — disabled options were being stripped out before reaching the viewer
- Fixed: The Free/Pro comparison table listed features incorrectly in both directions; it is now generated from the same tier map the viewers use
- Fixed: A Pro user who switched every premium navbar toggle off had the free defaults silently restored
- Fixed: The welcome screen after activation never actually opened
- Fixed: Enabling a panorama gallery alongside Pro could drop the gallery button from the toolbar
- Security: Added capability checks to the shortcode-manager AJAX endpoints, which previously verified only the nonce
- Improved: The Vite dev-server probe no longer runs on production or staging sites, where it could add up to a second to page load whenever its cache expired
- Documentation: Disclosed the Google-hosted
model-viewer script used by the AR viewer, and removed references to a Gutenberg block that did not exist yet
2.2.5 [August 23, 2026]
- Fixed: Shortcode Builder's Virtual Tour live preview could copy a
[psv_tour] shortcode missing its required scenes attribute
2.2.4 [July 31, 2026]
- Added: Proper uninstall handling — fires Freemius uninstall event for the free plugin on delete
- Removed: "Coming Soon" Gutenberg card from the admin Integration screen
- Improved: Updated Freemius SDK to 2.13.4
2.2.3 [June 06, 2026]
- Fixed: Shortcode panoramas failing on pages without jQuery
- Improved: Asset loading and Vite dev-server detection
- Improved: Centralized Pro add-on detection
- Improved: Updated Elementor widget icons
- Improved: Code cleanup across widgets and shortcode manager
2.2.2 [May 22, 2026]
- Improved: improve plugin performance and stability
- Fixed: various minor bug fixes and stability improvements
2.2.1 [May 20, 2026]
- Fixed: High-resolution panorama detail loss by loading original images instead of scaled versions
- Improved: stability and performance
2.2.0 [May 05, 2026]
- Added: AR 3D Viewer — Elementor widget and
[psv_ar] shortcode for .glb/.gltf models (model-viewer; optional AR on supported devices)
- Improved: Admin dashboard UI — styling, navigation, and Upgrade page comparison table (including AR 3D Viewer Free vs Pro)
- Improved: Tested compatibility through WordPress 7.0.0
2.1.1 [April 13, 2026]
- Fixed: Compatibility with WordPress 7.0 and Elementor 4.0.1
2.1.0 [March 07, 2026]
- Added: Virtual tour support for both widget and shortcode implementations
- Added: 360° video playback support for widget and shortcode
- Added: Gallery view support for widget and shortcode
- Added: Starting position (yaw/pitch) controls for panorama and tour scenes
- Improved: Compatibility with WordPress 6.9 and Elementor 3.35.5
- Improved: Performance optimizations for faster panorama rendering
- Fixed: Image display issue in Elementor 3.35.5 when placing widget inside columns
- Fixed: Multiple Photo Sphere Viewer widgets rendering incorrectly within the same section in editor mode
- Fixed: Duplicate frontend initialization on Elementor pages
- Fixed: Various minor bug fixes and stability improvements
2.0.3 [February 13, 2026]
- Fixed: Assets enqueue issue
2.0.2 [February 09, 2026]
- Improved: Compatibility updates for WordPress 6.9 and Elementor 3.35.3
- Improved: Performance improvements and bug fixes
2.0.1 [December 03, 2025]
- Fixed: Upgrade notice issue
- Added: Pro version pricing link
- Improved: Compatibility with latest WordPress & Elementor versions
2.0.0 [November 29, 2025]
- Added: Shortcode builder
- Improved: Refactored codebase for improved performance
- Added: Pro version
1.3.3 [October 01, 2025]
- Improved: Compatibility updates
- Improved: Documentation improvements
1.3.2 [May 01, 2025]
- Improved: Compatibility updates
1.3.1 [December 21, 2024]
- Improved: System improvements
- Improved: Compatibility updates
1.3.0 [October 09, 2024]
- Improved: Compatibility updates
1.2.0 [October 09, 2023]
- Improved: Compatibility updates
1.1.0 [March 15, 2023]
- Improved: Elementor compatibility update
1.0.1 [May 15, 2022]
1.0.0 [February 06, 2022]