Typed.js
Typed.js brings animated typing effects to your Webflow projects. Create engaging headlines that type, delete, and cycle through messages automatically — perfect for hero sections, testimonials, and dynamic call-to-actions that capture visitor attention without complex coding.

How to integrate Typed.js with Webflow
Typed.js offers flexible integration options for Webflow users. Choose between quick embed solutions for specific elements or site-wide implementations for consistent animations across your project.
Inline embed and popup widget
Add typing animations to specific pages or sections using Webflow's HTML Embed element.
What you can do:
- Create animated headlines that cycle through multiple messages
- Add typing effects to hero sections and landing pages
- Implement location-specific animations without affecting other pages
Setup steps:
- Add an HTML Embed element where you want the animation
- Include the Typed.js CDN link and initialization code
- Target specific elements using CSS classes or IDs
- Publish to see the effect (animations don't show in Designer preview)
Example implementation:
<h1>Welcome to <span id="typed"></span></h1>
<script src="https://cdn.jsdelivr.net/npm/typed.js@2.0.12"></script>
<script>
var typed = new Typed('#typed', {
strings: ["our website", "the future", "innovation"],
typeSpeed: 50,
loop: true
});
</script>
Site-wide custom code integration
Implement Typed.js across your entire Webflow project for consistent animations.
What you can do:
- Apply typing effects to multiple elements site-wide
- Maintain consistent animation settings across pages
- Reuse animations by assigning common classes
Setup process:
- Navigate to Settings > Custom Code
- Add the Typed.js script to the Footer Code section
- Include initialization code targeting your desired elements
- Assign matching classes to elements in the Designer
Configuration options:
- typeSpeed: Control how fast text appears (milliseconds)
- backSpeed: Set deletion speed
- startDelay: Add delay before typing begins
- loop: Enable continuous animation
- showCursor: Toggle typing cursor visibility
Build with Webflow and Typed.js API
For advanced implementations, combine Typed.js with Webflow's API capabilities to create dynamic, data-driven animations.
Use cases:
- Pull animation content from Webflow CMS collections
- Update typing animations based on user interactions
- Create personalized messages using member data
Dynamic CMS content
Connect Typed.js to your Webflow CMS for automated content updates.
Implementation approach:
- Use Webflow's API to fetch collection items
- Pass CMS data to Typed.js strings array
- Update animations when CMS content changes
Example workflow:
// Fetch CMS content
const headlines = document.querySelectorAll('[data-cms-headlines]');
const strings = Array.from(headlines).map(el => el.textContent);
// Initialize Typed.js with CMS data
new Typed('#dynamic-typed', {
strings: strings,
typeSpeed: 60
});
Custom interactions
Trigger typing animations based on user actions or page events.
Capabilities:
- Start animations on scroll using intersection observers
- Pause and resume typing on hover
- Chain animations with Webflow interactions
Event handling:
// Start animation on button click
document.querySelector('#start-btn').addEventListener('click', function() {
typed.start();
});
// Reset animation on form submission
form.addEventListener('submit', function() {
typed.reset();
});
What you can build
Integrating Typed.js with Webflow enables dynamic text animations that enhance user engagement.
- Agency portfolios: Showcase your services with rotating headlines like "We design websites, build brands, create experiences" that highlight your capabilities
- SaaS landing pages: Display product benefits with cycling messages such as "Save time, increase revenue, delight customers" in your hero section
- E-commerce promotions: Rotate through offers like "Free shipping today, 20% off sale items, new arrivals daily" to highlight current deals
- Event websites: Build anticipation with countdown messages typing "Conference starts in 3 days, Register now, Limited seats available"
Frequently asked questions
Typed.js animations only appear on published sites, not in the Designer preview or Editor mode. This is because Webflow executes custom JavaScript only on live domains for security and performance reasons. Always publish your site to a staging domain to test animations. Find more details in the Webflow custom code documentation which explains when and where custom scripts execute.
Typed.js animations only appear on published sites, not in the Designer preview or Editor mode. This is because Webflow executes custom JavaScript only on live domains for security and performance reasons. Always publish your site to a staging domain to test animations. Find more details in the Webflow custom code documentation which explains when and where custom scripts execute.
Use the official CDN from jsDelivr or cdnjs for reliability. The current stable version is available at https://cdn.jsdelivr.net/npm/typed.js@2.0.12/lib/typed.min.js. Avoid deprecated CDNs like rawgit or raw.githubusercontent as they may stop working. Check the official Typed.js GitHub releases for the latest version numbers and CDN links.
Use the official CDN from jsDelivr or cdnjs for reliability. The current stable version is available at https://cdn.jsdelivr.net/npm/typed.js@2.0.12/lib/typed.min.js. Avoid deprecated CDNs like rawgit or raw.githubusercontent as they may stop working. Check the official Typed.js GitHub releases for the latest version numbers and CDN links.
To animate CMS content, first add data attributes to your collection items in Webflow, then use JavaScript to extract and pass this data to Typed.js. The Webflow CMS API documentation provides methods for accessing collection data programmatically, which you can then format into the strings array Typed.js requires.
To animate CMS content, first add data attributes to your collection items in Webflow, then use JavaScript to extract and pass this data to Typed.js. The Webflow CMS API documentation provides methods for accessing collection data programmatically, which you can then format into the strings array Typed.js requires.
Yes, Typed.js works on mobile devices, but consider performance and user experience. Reduce animation complexity on mobile by using fewer strings or slower speeds. The Webflow breakpoints guide shows how to apply different custom code per device size using conditional JavaScript that checks viewport width.
Yes, Typed.js works on mobile devices, but consider performance and user experience. Reduce animation complexity on mobile by using fewer strings or slower speeds. The Webflow breakpoints guide shows how to apply different custom code per device size using conditional JavaScript that checks viewport width.
Style the cursor using custom CSS in your Webflow project. Target the .typed-cursor class that Typed.js automatically creates. Add styles in Settings > Custom Code or use an HTML Embed. The Typed.js configuration options detail cursor properties like cursorChar for changing the cursor character and autoInsertCss for controlling default styles.
Style the cursor using custom CSS in your Webflow project. Target the .typed-cursor class that Typed.js automatically creates. Add styles in Settings > Custom Code or use an HTML Embed. The Typed.js configuration options detail cursor properties like cursorChar for changing the cursor character and autoInsertCss for controlling default styles.

Description
Typed.js is a JavaScript library that creates animated typing effects for text, simulating the look of someone typing, backspacing, and retyping messages on your website. It programmatically types, deletes, and cycles through various messages, making web content more dynamic and engaging.
This integration page is provided for informational and convenience purposes only.

CMS Library: Nest
Simulate multiple nested Collections on a single page, with Finsweet's CMS Library!

CMS Library: Slider
Create CMS slider with dynamic number of slides, with Finsweet's CMS Library!

CMS Library: Anchor
Create CMS anchor links and sections, with Finsweet's CMS Library!

CMS Library: Combine
Combine multiple CMS Dynamic Lists into one single Collection List, with Finsweet's CMS Library!

CMS Library: Add Classes
Give unique add-on classes to elements inside your Collection List, with Finsweet's CMS Library!

Class Adder for Webflow Interactions
Class Adder is a tool to add/remove a class from an element. You can trigger the add/remove on click, hover, scroll in/out of view, or page load. This is an add-on to Webflow Interactions.