You don't have javascript enabled.
Textomap | Turn text into interactive maps in seconds

{{!getMap().locations.length ? 'No locations found 🤔 ' : getMap().locations.length == 1 ? '1 Location' : '%%LOCATIONS%% Locations'.replace('%%LOCATIONS%%', getMap().locations.length)}}
✓ Embedded
Discard

{{!getMap().locations.length ? 'No locations found 🤔 ' : getMap().locations.length == 1 ? '1 Location' : getMap().id == null && checkLimitedLocations() ? '10+ Locations' : '%%LOCATIONS%% Locations'.replace('%%LOCATIONS%%', getMap().locations.length)}}
Save map
{{getMap().text.length && getMap().orgText.length ? 'Cancel editing' : 'Close'}}
{{'%%CHRS%%/%%CHR_LIMIT%% Characters left'.replace('%%CHRS%%', getMap().text.length).replace('%%CHR_LIMIT%%', getCharLimit())}}
{{getMap() && getMap().locations.length ? 'Update Map' : 'Create Map'}}
TIP: Hover on the highlighted words for information and editing options
Generating Map
Free plan
{{getUpdateDate('Monthly usage resets on %%DATE%%')}}
My Maps
{{getSavedMaps('%%MAPS%%/%%LIMIT%% Maps')}}
Map views
{{getUser() && getUser().unlimited_views == '1' ? 'Unlimited' : getMapsViews('%%VIEWS%%/%%LIMIT%% Views')}}
AI assistant
Unlimited
Upgrade
{{getUserType() == '2' ? 'Pro plan 🚀' : getUserType() == '3' ? '🎓 Educator' : getUserType() == '4' ? 'Student' : 'Basic plan 🚀'}}
{{getUpdateDate(getUserType() == '4' ? 'Monthly usage resets on %%DATE%%' : 'Next billing on %%DATE%%')}}
My Maps
Unlimited
Personal maps
{{getMapsCreations('%%MAPS%%/%%LIMIT%% Maps created')}}
Student maps
{{getMapsCreations('%%LIMIT%% per student')}}
Map views
{{getUser() && getUser().unlimited_views == '1' ? 'Unlimited' : getMapsViews('%%VIEWS%%/%%LIMIT%% Views')}}
Students
{{getStudentsCount('%%STDNTS%%/%%CNT%%')}} Manage
AI assistant
Unlimited
You’ve reached the limit of maps you can save. Upgrade now to save unlimited maps and unlock all features.
NEW!
📑 Scan a CSV
Ask ChatGPT
✍ Add a Text Source

My Maps

✓ Embedded

{{map.title}}

No saved maps yet

Select the type of map you want to create from the options above
Need some inspiration?
Try our example text

Student maps

Select student

{{map.title}}

🌵
{{selectedStudent == null ? 'None of the students have created a map' : '%%USR%% has not saved any maps'.replace("%%USR%%", selectedStudent.username)}}

Generate interactive maps from your content in seconds

Textomap is the fasted way to create, customise and embed maps.
No spreadsheets or complex tools - Your words are enough.
⚡Try Textomap free
We support many languages
🇺🇸 🇬🇧 🇨🇳 🇪🇸 🇫🇷 🇩🇪 🇯🇵 🇷🇺 🇮🇹 🇵🇹 🇰🇷
Featured and Awarded
Save hours of manual work

Generate maps from any location based text source

🧳 Itineraries
✍️ Blog posts
🎓 Class material
🗞️ News articles
📚 eBooks
Assign and edit locations to any word or text

Edit the description, colour, and label of pins. Link photos and webpages to locations straight from your CMS, no uploading required

Get started
Travel planner and geographer powered with AI

Create content and search for information using ChatGPT, then instantly visualize it on a map

✨ Try the AI assistant
embed maps to your website with a couple of clicks

Once you've crafted the perfect map, seamlessly embed it into your blog post with a simple copy - paste

Creating maps is as easy as bookmarking a page

Generate and view maps in the same tab as you move between websites, social media, docs, and emails.

Get the free Chrome extension
The fastest way to create and embed maps for your WordPress website
Get the free Wordpress Plugin
Take your data with you

Use Textomap to extract location from any text and Export the data as a CSV file or open Google Maps

Create and edit maps on the go

No need to access your PC or CMS. Embedded and shared maps are automatically updated

Scan text in 11 different languages
Frequently Asked Questions

{{!getMap().locations.length ? getMap().id == null && shownText() ? 'No locations found 🤔 ' : 'No Locations' : getMap().locations.length == 1 ? '1 Location' : getMap().id == null && checkLimitedLocations() ? '10+ Locations' : '%%LOCATIONS%% Locations'.replace('%%LOCATIONS%%', getMap().locations.length)}}

Make sure they’re spelled correctly and capitalized
(e.g., Times Square in New York). Visit Help Center for more info.
Upgrade to display all locations in the text ✓ Embedded
Add & Edit Text
🗺️
Map is temporarily not available
Edit this map
{{getLocation().address}}
Edit location
{{getLocation().website_text == 2 ? 'Visit website' : getLocation().website_text == 3 ? 'Book now' : 'Learn more'}}
{{getLocation().address}}
{{getLocation().description ? getLocation().description : 'No description added...'}}

Searching for the best answer

ChatGPT is taking a bit longer, thanks for your patience
Disable your ad blocker and refresh to use your AI assistant
We show ads to cover the costs of providing this feature for free.
We appreciate your support 🙏
Got it
We show ads in order to cover the costs of providing Textomap as a free service
💡 View an example map
{{getUserType() != '2' ? 'You’ve reached the character limit. Upgrade to use longer text & unlock all features' : '☝️️️️ You can add up to 30K characters. Contact us if you need to use longer text'}}
Upgrade

{{error.msg_header ? error.msg_header : error.question ? 'Sorry, we couldn’t create a map from your question' : 'No locations found. Make sure they’re spelled correctly and Capitalized '}}

{{error.msg ? error.msg : error.question ? 'We rely on the capabilities and knowledge of ChatGPT' : '(e.g., Times Square in New York / 54 Oxford St, London)'}}
See which languages you can create maps with
{{error.err == 'CONNECTION_ERROR' ? 'Back to editor' : error.err != 'NO_ANSWER_ERROR' && error.err != 'LIMIT_AI_ERROR' ? 'Edit text' : 'Got it'}}
Your text is perfect and in a language we support?
Let us know
Visit the Help Center for more information

Sorry, we couldn't create a map
using this text.

Either the text does not contain any locations
or we have a sneaky bug on our hands.
Let us know
Clear selected text

{{showError() ? getErrorHeader() : 'No internet connection'}}

{{showError() ? getErrorBody() : 'Check your connection and try again.'}}
Add Locations
Embed
Save map