Museums and
Tradeshow

Trusted by

Responsive Image
Responsive Image
Responsive Image
Delight your visitors with a personalized and advanced experience.
Attract and engage new generations of visitors by making your museum, art gallery, or amusement park experience more enjoyable and safer than before. Implementing our indoor navigation and positioning solution, you can provide interactive maps and unleash location-based marketing actions. Just leveraging smartphones, off-the-shelf iBeacons, and the power of our algorithms.
What you’ll get
SYSTEM INTEGRATION
Use location data collected in any external system (ERP, MES, WMS), thanks to simple integration via APIs.
SEAMLESS INDOOR AND OUTDOOR POSITIONING
Switch smoothly from indoor to outdoor maps when the user or the asset transits into an outdoor area.
GEO-REFERENCED POSITIONING DATA
Collect, aggregate and store positions to provide analytics and insights.
Guide your visitors
Let your visitors find specific attractions or facilities through an interactive map on their smartphone. You can also create customized tours based on users interests and behaviors.
placeholder
Navigation
Help travelers reach a point of interest using a map with an accuracy of up to 1.5m (3ft).
placeholder
Custom tours
Define custom tours based on data.
placeholder
Accessibility
Show routes and services for visitors with special mobility needs.
placeholder
Groups management
Keep families and groups connected through location sharing and social media integration.
Deliver location-based content
Deliver relevant, location-based content to your visitors and engage them with a more enjoyable experience.
placeholder
Smart tour guide
Based on proximity to specific attractions, offer relevant texts, pictures, and videos.
placeholder
Promote offers
Deliver food and retail promotion to nearby visitors.
placeholder
IoT automation
Automate lighting and other smart systems based on visitors' presence.
placeholder
Enhanced AR experience
Bring location awareness into your Augmented Reality apps and platforms.
Improve safety and security
Fun is better if safe. Raise your control over visitors' experience and increase your security level.
placeholder
Crowd-levels
Track your visitors position in real-time, predict potential issues or manage emergencies.
placeholder
Smart security deployment
Elevate your security personnel performance in an emergency by always knowing where they’re most needed.
placeholder
Evacuation wayfinding
Guide your visitors to the safest places through indoor digital wayfinding.
Get insights on visitors’ experience
Gather and analyze location-based data and steer your space usage and experience decisions.
placeholder
Behavior-based insights
Monitor visitors' behaviors through heatmaps and translate insights into retargeting actions, new services, or improvements.
placeholder
Track performances
Rank your attractions or points of interest based on KPIs like visitor numbers and permanence time.
placeholder
Detect bottlenecks and queues
Reduce waiting time and resolve bottlenecks and queues detecting them in real-time.

See case studies

Si è verificato un errore nell'elaborarazione del modello.
The following has evaluated to null or missing:
==> friendlyURLs[themeDisplay.getLanguageId()]  [in template "20100#20127#48947" at line 6, column 85]

----
Tip: It's the final [] step that caused this error, not those before it.
----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: ${friendlyURLs[themeDisplay.getLangua...  [in template "20100#20127#48947" at line 6, column 83]
----
1<div class="nextome-case-study-${randomNamespace}"> 
2	<div class="nextome-body1">CASE STUDY</div> 
3  <div class="nextome-heading4b"><#if (NxtNameCaseStudy.getData())??>${NxtNameCaseStudy.getData()}</#if></div> 
4  <div class="nextome-subtitle1sb"><#if (NxtDescCaseStudy.getData())??>${NxtDescCaseStudy.getData()}</#if></div> 
5  <div class="nextome-button1"> 
6		<a class="nextome-txt-primary-active" data-senna-off="true" href="${friendlyURLs[themeDisplay.getLanguageId()]?replace('/web/guest', '')!""}"> 
7			<span>READ MORE</span> 
8			<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">  
9      	<path d="M12 4L10.59 5.41L16.17 11H4V13H16.17L10.59 18.59L12 20L20 12L12 4Z" fill="#05D9AA"></path>  
10      </svg> 
11		</a> 
12	</div> 
13  <div class="nextome-case-study-image"> 
14		<#if (NxtImgCaseStudy.getData())?? && NxtImgCaseStudy.getData() != ""> 
15			<img alt="${NxtImgCaseStudy.getAttribute("alt")}" data-fileentryid="${NxtImgCaseStudy.getAttribute("fileEntryId")}" src="${NxtImgCaseStudy.getData()}" /> 
16		</#if> 
17  </div> 
18</div> 
19<style> 
20		.nextome-case-study-${randomNamespace} { 
21        display: flex; 
22        flex-direction: column; 
23        align-items: flex-start; 
24        padding: clamp(1rem, 2.5vw, 2rem); 
25        background: #FFFFFF; 
26        box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25); 
27        border-radius: 30px; 
28        margin: clamp(.5rem, 2vw, 1.5rem); 
29
30     
31    .nextome-case-study-${randomNamespace} div:not(:last-child) { 
32        margin-bottom: clamp(1rem, 3vw, 2rem); 
33
34     
35    .nextome-case-study-${randomNamespace} div:nth-child(2) { 
36        margin-bottom: .5rem; 
37
38     
39    .nextome-case-study-${randomNamespace} img { 
40        border-radius: 1.5rem; 
41				aspect-ratio: 5 / 4; 
42				object-fit: cover; 
43
44     
45    .nextome-case-study-${randomNamespace} a:hover { 
46        text-decoration: none; 
47				color: #10303b; 
48
49		     
50    .nextome-case-study-${randomNamespace} a:hover svg path { 
51				fill: #10303b; 
52
53		 
54		.nextome-case-study-${randomNamespace} .nextome-heading4b { 
55			display: -webkit-box; 
56			-webkit-line-clamp: 1; 
57			-webkit-box-orient: vertical;   
58			overflow: hidden; 
59
60		 
61		.nextome-case-study-${randomNamespace} .nextome-subtitle1sb { 
62			min-height: clamp(50px, 15vw, 116px); 
63			display: -webkit-box; 
64			-webkit-line-clamp: 4; 
65			-webkit-box-orient: vertical;   
66			overflow: hidden; 
67
68</style> 
Si è verificato un errore nell'elaborarazione del modello.
The following has evaluated to null or missing:
==> friendlyURLs[themeDisplay.getLanguageId()]  [in template "20100#20127#48947" at line 6, column 85]

----
Tip: It's the final [] step that caused this error, not those before it.
----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: ${friendlyURLs[themeDisplay.getLangua...  [in template "20100#20127#48947" at line 6, column 83]
----
1<div class="nextome-case-study-${randomNamespace}"> 
2	<div class="nextome-body1">CASE STUDY</div> 
3  <div class="nextome-heading4b"><#if (NxtNameCaseStudy.getData())??>${NxtNameCaseStudy.getData()}</#if></div> 
4  <div class="nextome-subtitle1sb"><#if (NxtDescCaseStudy.getData())??>${NxtDescCaseStudy.getData()}</#if></div> 
5  <div class="nextome-button1"> 
6		<a class="nextome-txt-primary-active" data-senna-off="true" href="${friendlyURLs[themeDisplay.getLanguageId()]?replace('/web/guest', '')!""}"> 
7			<span>READ MORE</span> 
8			<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">  
9      	<path d="M12 4L10.59 5.41L16.17 11H4V13H16.17L10.59 18.59L12 20L20 12L12 4Z" fill="#05D9AA"></path>  
10      </svg> 
11		</a> 
12	</div> 
13  <div class="nextome-case-study-image"> 
14		<#if (NxtImgCaseStudy.getData())?? && NxtImgCaseStudy.getData() != ""> 
15			<img alt="${NxtImgCaseStudy.getAttribute("alt")}" data-fileentryid="${NxtImgCaseStudy.getAttribute("fileEntryId")}" src="${NxtImgCaseStudy.getData()}" /> 
16		</#if> 
17  </div> 
18</div> 
19<style> 
20		.nextome-case-study-${randomNamespace} { 
21        display: flex; 
22        flex-direction: column; 
23        align-items: flex-start; 
24        padding: clamp(1rem, 2.5vw, 2rem); 
25        background: #FFFFFF; 
26        box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25); 
27        border-radius: 30px; 
28        margin: clamp(.5rem, 2vw, 1.5rem); 
29
30     
31    .nextome-case-study-${randomNamespace} div:not(:last-child) { 
32        margin-bottom: clamp(1rem, 3vw, 2rem); 
33
34     
35    .nextome-case-study-${randomNamespace} div:nth-child(2) { 
36        margin-bottom: .5rem; 
37
38     
39    .nextome-case-study-${randomNamespace} img { 
40        border-radius: 1.5rem; 
41				aspect-ratio: 5 / 4; 
42				object-fit: cover; 
43
44     
45    .nextome-case-study-${randomNamespace} a:hover { 
46        text-decoration: none; 
47				color: #10303b; 
48
49		     
50    .nextome-case-study-${randomNamespace} a:hover svg path { 
51				fill: #10303b; 
52
53		 
54		.nextome-case-study-${randomNamespace} .nextome-heading4b { 
55			display: -webkit-box; 
56			-webkit-line-clamp: 1; 
57			-webkit-box-orient: vertical;   
58			overflow: hidden; 
59
60		 
61		.nextome-case-study-${randomNamespace} .nextome-subtitle1sb { 
62			min-height: clamp(50px, 15vw, 116px); 
63			display: -webkit-box; 
64			-webkit-line-clamp: 4; 
65			-webkit-box-orient: vertical;   
66			overflow: hidden; 
67
68</style> 
Si è verificato un errore nell'elaborarazione del modello.
The following has evaluated to null or missing:
==> friendlyURLs[themeDisplay.getLanguageId()]  [in template "20100#20127#48947" at line 6, column 85]

----
Tip: It's the final [] step that caused this error, not those before it.
----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: ${friendlyURLs[themeDisplay.getLangua...  [in template "20100#20127#48947" at line 6, column 83]
----
1<div class="nextome-case-study-${randomNamespace}"> 
2	<div class="nextome-body1">CASE STUDY</div> 
3  <div class="nextome-heading4b"><#if (NxtNameCaseStudy.getData())??>${NxtNameCaseStudy.getData()}</#if></div> 
4  <div class="nextome-subtitle1sb"><#if (NxtDescCaseStudy.getData())??>${NxtDescCaseStudy.getData()}</#if></div> 
5  <div class="nextome-button1"> 
6		<a class="nextome-txt-primary-active" data-senna-off="true" href="${friendlyURLs[themeDisplay.getLanguageId()]?replace('/web/guest', '')!""}"> 
7			<span>READ MORE</span> 
8			<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">  
9      	<path d="M12 4L10.59 5.41L16.17 11H4V13H16.17L10.59 18.59L12 20L20 12L12 4Z" fill="#05D9AA"></path>  
10      </svg> 
11		</a> 
12	</div> 
13  <div class="nextome-case-study-image"> 
14		<#if (NxtImgCaseStudy.getData())?? && NxtImgCaseStudy.getData() != ""> 
15			<img alt="${NxtImgCaseStudy.getAttribute("alt")}" data-fileentryid="${NxtImgCaseStudy.getAttribute("fileEntryId")}" src="${NxtImgCaseStudy.getData()}" /> 
16		</#if> 
17  </div> 
18</div> 
19<style> 
20		.nextome-case-study-${randomNamespace} { 
21        display: flex; 
22        flex-direction: column; 
23        align-items: flex-start; 
24        padding: clamp(1rem, 2.5vw, 2rem); 
25        background: #FFFFFF; 
26        box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25); 
27        border-radius: 30px; 
28        margin: clamp(.5rem, 2vw, 1.5rem); 
29
30     
31    .nextome-case-study-${randomNamespace} div:not(:last-child) { 
32        margin-bottom: clamp(1rem, 3vw, 2rem); 
33
34     
35    .nextome-case-study-${randomNamespace} div:nth-child(2) { 
36        margin-bottom: .5rem; 
37
38     
39    .nextome-case-study-${randomNamespace} img { 
40        border-radius: 1.5rem; 
41				aspect-ratio: 5 / 4; 
42				object-fit: cover; 
43
44     
45    .nextome-case-study-${randomNamespace} a:hover { 
46        text-decoration: none; 
47				color: #10303b; 
48
49		     
50    .nextome-case-study-${randomNamespace} a:hover svg path { 
51				fill: #10303b; 
52
53		 
54		.nextome-case-study-${randomNamespace} .nextome-heading4b { 
55			display: -webkit-box; 
56			-webkit-line-clamp: 1; 
57			-webkit-box-orient: vertical;   
58			overflow: hidden; 
59
60		 
61		.nextome-case-study-${randomNamespace} .nextome-subtitle1sb { 
62			min-height: clamp(50px, 15vw, 116px); 
63			display: -webkit-box; 
64			-webkit-line-clamp: 4; 
65			-webkit-box-orient: vertical;   
66			overflow: hidden; 
67
68</style> 
Ciao Be the first to know the latest news about indoor positioning.
Sign up for our newsletter and receive insights and opportunities on this growing market.
By submitting this information, I agree to Nextome's Privacy Policy