Why ExpressionEngine?

Both business‐ and creative‐focused folks love ExpressionEngine for different reasons. While ExpressionEngine is more than the sum of its parts, it nevertheless has some pretty amazing parts.

Web Publishing

ExpressionEngine’s publishing features are broad, comprehensive, and highly flexible.

  • Multiple Channels/Site Sections

    ExpressionEngine supports an unlimited number of channels. You can separate your channels into independent pages, or you can put multiple channels on the same page.

  • Custom Entry Fields

    Each section can have its own unique set of entry fields. These can be input boxes, pull-down menus or textareas.

  • Search Engine Friendly URLs

    The URLs produced by ExpressionEngine do not contain query strings which are disliked by search engines. Rather, they mimic the directory structure of static sites.

  • Custom Statuses

    Create editorial work-flow by creating statuses that you can assign your entries to, like "first draft", "revision", "final edit", etc. You can color-code them too.

  • Multiple Categories

    Each entry can be assigned to multiple categories, and you can create as many unique category groups as you want.

  • RSS and ATOM Syndication

    With RSS, your content can be made available for syndication. ExpressionEngine supports all major syndication formats, including the new Atom format.

  • Moblog Publishing

    Email weblog entries and photos to ExpressionEngine using your mobile phone or email program.

  • Relationships

    You can create relationships between entries in different sections of your site, enabling information to be shared.

  • Entry Versioning

    The Entry Versioning feature lets you save previous revisions of your weblog entries, so you never lose any edits you make.

  • Multi-Entry Editing

    This feature permits multiple entries to be edited at one time, saving you time.

  • Entry View Tracking

    You can track up to four "zones" per entry to see where your entries are being viewed.

  • HTML Formatting Buttons

    Each user can store their own formatting elements that are available at the click of a button.

  • URL Titles

    Each weblog entry can be given a "human friendly" title for use with your comments or your permalink page.

  • Sticky Topics

    Weblog entries can be made "sticky", forcing them to always show up at the top of the page.

  • Future Entries

    You can post entries into the future and they won't appear on your site until that date.

  • Expiring Entries

    You can set an expiration date and your entries will be removed from your site automatically on that date.

  • Pagination

    This feature allows your users to view older entries by clicking "next" and "previous" page links.

  • Article Pagination

    You can split your articles into multiple pages.

  • Image and File Uploading

    Upload to multiple destinations, and limit uploads to specific user groups.

  • Image Resizing and Thumbnailing

    ExpressionEngine lets you resize images and create thumbnails, with support for the three major image manipulation protocols: GD, NetPBM, and ImageMagick.

  • Image and File Browsing

    View your uploaded images in the convenient File Browser

  • Emoticons

    Add "smileys" to your weblog entries and comments.

  • Bookmarklet

    Post entries using a convenient bookmarklet.


ExpressionEngine’s user commenting system lets your community participate in the discussion.

  • User Commenting System

    A full-featured user commenting system is built in, supporting advanced features like moderation, membership, and the most full-featured anti-spam protection available.

  • Comment Membership

    You can choose to require membership to post comments, or allow non-registered commenting.

  • Comment Moderation

    You can optionally make user comments subject to admin approval.

  • Comment Expiration

    Allow comments for a set period of time after each entry is posted.

  • Comment Pagination

    This feature allows your comments to spread across multiple pages to avoid very large pages.


ExpressionEngine has sophisticated typography tools—a writer’s dream!

  • Auto Typographic Formatting

    Your entries and comments can be formatted automatically to produce xhtml and semantically valid typography.

  • Auto Convert MS Word Characters

    If you paste text from MS Word, the proprietary characters (like curly quotes) are automatically converted to HTML equivalents.

  • Auto Convert High ASCII to Entities

    When posting entries, if you use high-ascii characters (like bullets, accents, etc.) they will be converted automatically to HTML entities.

  • Automatic Linking

    URLs posted in entries or comments can be turned into hyperlinks automatically.

  • Email Anti-Spam Encoding

    Email addresses posted in entries, comments, or even in templates, can be spam protected.

  • Typographic Plugin Support

    Your text can optionally be processed by any available plugin such as Textile, Markdown, etc.


Keep track of what’s happening on your site including most viewed and commented posts.

  • Hit Tracking

    Each template has its own hit tracker, enabling you to see which pages are most viewed.

  • Statistical Tracking

    ExpressionEngine tracks a variety of statistics, like total number of entries, total comments, total trackbacks, and more.

  • Online User Tracking

    This features allows you to show who is online, how many people are visiting at any given moment, and how many people have ever visited your site.

  • Search Term Log

    The search terms submitted by your users are saved so you can see what people are searching for.

Template Engine

Our template engine permits you to build dynamic, content driven websites using simple, yet powerful, tags.

  • Full Page Modeling

    Each template represents an entire web page.

  • Conditional Operators

    Use conditionals to show targeted content to users that meet any criteria you set.

  • Custom Global Variables

    Create your own variables that you can use in any template.

  • Sub-Templates

    With our Embedded Template feature, any template can be nested within another template, allowing you to use common headers, footers, and other site elements. This feature is so flexible you can put templates within templates within templates within templates...

  • Template Access Control

    You can limit the viewing of each template to specific Member Groups.

  • PHP in Templates

    You can choose to allow or deny PHP scripting in each template. You can even choose where in the chain the PHP parsing occurs - either pre-template or post-template.

  • Custom SQL Queries

    Using our Query Tag, you can construct your own custom database queries. This feature essentially allows you to create your own tags.

  • Template Exporting

    Export your templates as text or zip files.

  • Template Library

    Save your templates to a library so they can be used to create new ones.

  • Versioning System

    ExpressionEngine lets you save every change you make to your templates so you can go back in time and retrieve older versions.

  • Customizable Workspace

    Each user can customize the size of the template window.

  • Template Notes

    Store notes and information regarding each template.


ExpressionEngine lets you manage your mailing lists and send email in a variety of ways.

  • Multi-Protocol Support

    ExpressionEngine supports the three major email protocols: Mail, SendMail, and SMTP.

  • Flexible Email Options

    HTML email, priorities, word wrapping, CC, BCC and any combination of recipients, from member groups, to individuals, to members of your mailing list.

  • Mail Caching

    All emails are saved so you can keep a record of your sent messages.

  • Batch Processing

    This feature permits you to send email to very large lists without needing a dedicated email server.

ExpressionEngine has a powerful search engine and query tools.

  • Search Engine

    Powerful search module with simple and advanced search capability. You can search within weblogs, comments, members, and categories.

  • Search Term Log

    The search terms submitted by your users are saved so you can see what people are searching for.

  • IP Searching

    IP data can be searched for in entries, comments, forum posts, etc.

Spam Deterrents

No other publishing platform gives you as many tools to prevent spam as ExpressionEngine.

  • Anti-Spam System

    ExpressionEngine comes with an exclusive in-app anti-spam system that applies to all user-submitted content, and can be leveraged by third-party add-ons. It is trained on your site's content, making it a precision tool amongst sledgehammer SaaS solutions. Plus, your content never leaves your site, giving you best in class spam protection while maintaining your privacy.

  • Blacklist

    The ExpressionEngine Blacklist/Whitelist Module is an integral part of EE's spam prevention capability. This Module allows you to specify URLs, IP addresses, and user agents that you want to deny (blacklist) or specifically allow (whitelist) from your site. The blacklist is checks all content that is submitted to your site. ExpressionEngine will compare the submitted content against your blacklist/whitelist and then behave accordingly.

  • Captcha

    A CAPTCHA is a computer-generated test that humans can pass but computer programs cannot. Since a great deal of spam is generated by automated scripts or "bots", a CAPTCHA can be effective at preventing their use. When the CAPTCHA is enabled, an image containing a random word appears next to the comment and member registration forms. In order to submit the form, the word must be typed into a form field.

  • Comment Time Interval

    This setting defines the amount of time that must lapse between comment postings. A malicious user will have to wait until the time has lapsed before being able to post again.

  • Rank Denial

    The primary goal of spammers is to have their sites ranked highly in Search Engines in order to generating more traffic for themselves. They achieve this by posting comments at your site which contain links to their own site. The more links to their site scattered in weblogs across the internet, the higher Search Engines will rank them. The Rank Denial feature denies a spammer this "ranking" benefit by altering all links submitted by users so that they point to an intermediary "redirect page" at your site first, before being sent to the target destination.

  • Secure Form Mode

    Secure Form Mode prevents automated scripts (the most common way spam is generated) from repeatedly submitting comments or other form data. A submission is only allowed when a user manually loads a page and submits the form from your site. And once the form data is received, the user has to manually reload the page before they can submit again.

  • Duplicate Data Denial

    The "Deny Duplicate Data" feature prevents a comment from being accepted if an identical one already exists in your database. A malicious person can't submit the same information more than once.

  • Site Membership

    Although this isn't technically a security feature, requiring your users to be members of your site provides additional safety against spamming since you have better control over the people posting on your site.


ExpressionEngine’s powerful utilities help you manage your site.

  • SQL Manager

    A full complement of SQL utilities, including database optimization, database backup, manually submitted queries, table info, process info, and more.

  • Extension Manager

    Extensions are custom scripts that interact with the core EE code base to increase functionality or alter it without hacking.

  • Admin Logs

    Various Control Panel processes are logged.

  • Search and Replace

    Globally search and replace content in your weblog entries and templates.

  • Data Export

    Export your templates and your database.

  • PHP Info

    View information about your PHP installation directly from the ExpressionEngine control panel.


ExpressionEngine is a modular system and comes with dozens of tailored solutions.

  • Channel

    In ExpressionEngine, the term "channel" refers to a section of your website. The channel module is the most flexible and powerful system we offer, enabling you to display your content in an almost infinite variety of ways. The Channel Module supports advanced features, like custom data fields, multiple nested categories, sticky topics, workflow, publish and expiration dates, and other features found only in high-end content management solutions. You can even have multiple channel on the same page to create an ezine or complex brochure site.

  • Member Manager

    ExpressionEngine supports an unlimited number of members and authors in a single installation, and comes with advanced member management tools so you can control exactly who can do what.

    Powerful Member Groups allow you to restrict access and assign privileges to any area of your site, or within your administrative control panel. Create custom membership fields for required member information, enable editorial workflow if you have multiple authors contributing to your content, restrict pages to members of a certain level, and more.

    Each member has their own profile management area where they can set their own preferences, manage their account, store notes, send email and private messages to other users, upload their photo, and more. Member management is integral to ExpressionEngine, so it provides the tools you need.

  • Simple Commerce

    Introducing the ExpressionEngine Simple Commerce Module by pMachine. Fully integrate the purchasing power of PayPal into your existing ExpressionEngine site with this easy to use, flexible solution. Customizable email notifications for each product, member group assignment upon purchase, built in encryption, and automated purchase tracking through PayPal's Instant Payment Notification service give you the power you need to make your own store.

  • Discussion Forum

    ExpressionEngine's Discussion Forum module is a complete community building solution that integrates seamlessly with your CMS.

  • Blogger/MetaWeblog API

    ExpressionEngine supports all three of the XML-RPC posting APIs (Blogger API, MetaWeblog API, and MT API), enabling you to use desktop software to send content to your site. Each author in your system can have their own API accounts, so different authors can post to different sections of your site.

  • RSS

    RSS feeds are an important component of any professional website since they allow other sites to syndicate your content. ExpressionEngine supports all RSS protocols - .93, 1.0, 2.0, and Atom - and gives you the flexibility to cutomize your feeds as you desire.

  • Email

    The ExpressionEngine Email module lets you easily create feedback and tell-a-friend forms on your site. ExpressionEngine's flexible tag syntax makes the process of creating and managing these forms very simple, and since it supports all major Email protocols (SMTP, Sendmail, PHP Mail) it'll work in virtually any environment.

  • Search

    ExpressionEngine supports fast, flexible, and precise content searching, through simple and/or advanced search forms. As the site admin you can set search criteria, so that your users can search only the areas you specify, and you can have multiple search forms, each with different search criteria.

  • Moblog

    ExpressionEngine's Moblog Module enables you to send content to your website via email. Send photos to your image gallery, weblog entries to your blog, or data into your site sections simply by sending an email to your own account. You can have as many moblog accounts as you need, and each email you send can contain special tags which let you control how the content gets stored and displayed.

  • Blacklist/Whitelist

    The Blacklist and Whitelist Module is part of ExpressionEngine's extensive security features, designed to prevent spam in comments, trackbacks, referrers, etc. This module let you ban (blacklist) or allow (whitelist) URLs, IP addresses, and User Agents.

  • Statistics

    The ExpressionEngine stats module enables you to show a "who's online" list of users viewing your site at any given moment. You can also display various statistics, like the total number of entries, comments, trackbacks, members, page hits, etc.

  • Query

    Although ExpressionEngine enables you to display your content in nearly any imaginable way, occasionally you might need something uncommon. The Query Module permits you to run pure MySQL queries within your templates. No longer do you need to write your own custom handler scripts to output information from your database, simply put your query in our Query Module Tag and let it generate the results.

Member Management

Build a community with ExpressionEngine’s robust and flexible membership capability.

  • Multi-User System

    ExpressionEngine is a true multi-user system. Each user can be granted a wide range of privileges, letting you define with precise control what each user is permitted to do.

  • Member Groups

    You can define an unlimited number of Member Groups, each with over 40 individual user privileges. Each member of your community is assigned to a Member Group, determining what they are allowed to do.

  • Custom Member Fields

    The member profile system permits you to add your own fields. Build your own data model and collect the information you need from your users.

  • Member Activation

    Members can "self-activate" via email or you can validate accounts manually.

  • Profile Management

    Each member has their own profile management page, in which they can set preferences and update their personal information.

  • Subscription Management

    The member console allows your users to manage their comment and gallery subscriptions.

  • Member Localization

    Each member can have their own localization settings, allowing them to view your site in their local time.

  • Member Communication

    An Email Console permits members to email each other from your system. Each user can choose whether or not to receive email.

  • Email Console Logs

    For security, all email sent by your members is logged.

  • Member Quick Links

    Each member that has Control Panel access can view their own custom links in the Control Panel navigation.

  • Note Pad

    Each member has their own notepad.

Data Caching

ExpressionEngine’s data caching features allow you to reduce your server load while retaining all the benefits of dynamically generated information.

  • Template Caching

    Entire templates can be cached, producing the fastest rendering time of any dynamic system.

  • Query Caching

    The output of your database is cached, reducing the database load.

  • Tag Caching

    Each individual template tag can be cached, allowing pages to be both dynamic and static simultaneously.


ExpressionEngine has the most comprehensive suite of security features of any publishing platform on the market.

  • Session Management

    ExpressionEngine has three separate session management systems, based on your security needs. Your control panel and your public site can each utilize its own session preferences.

  • Secure Form Processing

    Forms can only be submitted once per page load. This prevents duplicate submissions and deters spamming.

  • Captcha

    ExpressionEngine can generate "captcha" images for member registration and comment posting to prevent spamming.

  • Throttling

    This feature lets you manage the frequency that any given IP address can access your site in order to help prevent denial of service attacks.

  • Duplicate Data Denial

    When enabled, this preference denies any user-submitted data that already exists in the database, providing increased spam protection.

  • IP and User Agent Logging

    Our Session Management system tracks both IPs and User Agents for more precise authentication.

  • Password Lockout

    Users can be locked out after several invalid password attempts. This is a deterrent to collision and brute force hacking attempts.

  • Secure Password Mode

    User can not choose passwords that are based on the username, or that appear in a dictionary.

  • IP Banning

    Users can be banned by full or partial IP addresses. Wild-cards can be used.

  • Email Banning

    Email addresses can be banned or restricted from use. Wild-cards can be used.

  • Username Restriction

    This permits you to designate names that you do not want your members using.

  • Word Censoring

    Define a list of banned words. When submitted by your users, the words are replaced with ###