MLS / IDX Resources Aug 6, 2026 · 23 min read

DDF Plugin for WordPress: Canadian MLS Integration Guide

B
Benjamin Levy
Contributor · MLSimport

Last updated: August 6, 2026

What is CREA DDF?

CREA DDF is the Data Distribution Facility, a service run by the Canadian Real Estate Association (CREA). It sends MLS® listings to websites other than REALTOR.ca. Only CREA members can use it: Canadian REALTORS® and their brokerages. It carries Canadian listings only.

Here is what that means for your website:

  • It is a feed, not a website. A feed is a steady stream of listing facts, like price, photos and status. Your site needs software to show it.
  • Your brokerage says yes first. The brokerage opts in. Then you pick a feed in CREA’s DDF Dashboard.
  • There are two feeds most sites use. The Member Website Feed shows your own or your brokerage’s listings. The National Shared Pool also shows listings from other brokerages that opted in.
  • It is not every listing in Canada. Each brokerage decides whether to share. A board’s own feed can go deeper in one city.
  • Rules come with it. CREA wants updates at least every 24 hours, the right logos and credits, and no edits to the listing text.

No edits also means you can’t rewrite listings to look unique to Google, and you don’t need to. See whether imported DDF listings count as duplicate content of REALTOR.ca and hurt your SEO.

On a US MLS instead? DDF won’t work for you. Read the FAQ below on US listings.

Do I need my broker’s permission to put a listing feed on my own website in Canada?

Yes. If you are a salesperson, your brokerage has to say yes before a listing feed for your own website can exist. That goes for CREA’s REALTOR.ca DDF and for most local board feeds. CREA’s DDF Policy says brokerage participation is optional, and a salesperson needs the brokerage’s permission whether the brokerage participates itself or opts in only to grant that permission. CREA’s café blog noted in February 2025 that these settings may only be updated by a brokerage owner. No plugin can skip this step or ask for it for you. That includes MLS Import.

Here is who has to say yes for each kind of feed:

Feed Who has to say yes first Where the rule comes from
REALTOR.ca DDF (Member Website Feed or National Shared Pool) Your brokerage. Only a brokerage owner can change the brokerage’s DDF settings. After that, you opt in to your own feed in the DDF Dashboard. CREA DDF Policy section 4(a)
REALTORS Association of Edmonton board feed The board, in writing, plus your Principal Broker’s consent for an agent’s own site RAE Rules (see our Edmonton page)
ITSO (Cornerstone and Brantford) Your Broker of Record or a Bridge Authority opens the agreement before anyone else in the office can ITSO KB201 (see our ITSO page)
TRREB’s PropTx feed TRREB, through the board’s data services route. Ask TRREB who has to sign. See PropTx and AMPRE (TRREB)

Quebec works differently. Quebec listings run on Centris, outside the DDF; see how to connect Centris listings to WordPress.

How your brokerage opts into the DDF National Shared Pool

Your brokerage owner starts the opt-in in CREA’s DDF Dashboard and grants agents permission to take part. Choose National Shared Pool to show other members’ listings (see the two feeds above).

  1. Ask your brokerage owner to open CREA’s DDF Dashboard.
  2. Have the owner opt into the National Shared Pool and set your permission.
  3. With that permission, opt in through your own Dashboard before pulling the feed or hiring a provider.
  4. Confirm the website feed with CREA. Current button names and account review times are unknown. Call 1-888-237-7945 if you get stuck.

Wondering how long this takes? The broker’s permission, CREA’s feed setup and the plugin connection are separate steps; see how DDF approval and credential delivery work, and whether 30 days is enough to get DDF access and finish the first import.

CREA’s rules require pool members to share their listings, except those a seller excludes. The pool does not include every Canadian listing.

Planning sites for several agents or offices? CREA allows no more than ten websites per participant on DDF-sourced data, and each realtor needs their own broker OK and feed. See running MLS Import on more than one domain; for agencies, volume discounts start at five WordPress sites on one account.

What to ask your broker before you buy anything

Send your broker four questions in one email:

  1. “Has our brokerage opted in to REALTOR.ca DDF?”
  2. “Which feeds are turned on: the Member Website Feed, the National Shared Pool, or both?”
  3. “Can you give me permission to create my own feed for my website?”
  4. “Can you put that yes in writing?”
Pro Tip

If the feed you want looks missing in the DDF Dashboard, check with your broker before you call anyone else. Your brokerage has to opt in before your own feed choices can work. Not sure who signs at your board? See who needs to hold the credentials.

What rules do I have to follow to show my board’s listings on my own website in Canada?

You follow three sets of rules: CREA’s DDF rules, your board’s own rules, and your province’s advertising rules. First, your brokerage has to say yes. Then your site has to show the right logo, brokerage name and notices. It has to update at least every 24 hours. And you can’t change what the listing says.

Brokerage permission is covered above, and CREA’s own DDF rules are listed with their rule numbers under “What a DDF plugin for WordPress has to do” below. The rest is set by others:

Rule What it means for your site Who sets it
Don’t edit listings Show the listing as the feed sends it. No new watermarks, no rewritten remarks. CREA and your board
Board disclaimers and limits If you use your board’s own feed, its rulebook adds its own wording, limits and fines. With DDF only, CREA’s DDF Policy and Rules govern the display. Your board
Your name and brokerage on every page Your website counts as advertising. Your provincial regulator (for example RECO in Ontario, BCFSA in BC)
Contact forms If you collect buyers’ names and emails, you need a privacy policy and their consent. Federal and provincial privacy law

Board rules can be very specific. The Nova Scotia board’s rulebook (version dated March 25, 2025) caps a search at 500 results. It gives you five business days to fix a problem. And it allows a $75 fine for each violation. See the Nova Scotia Association of REALTORS page. In Edmonton, an agent’s own site needs the board’s written OK and the broker’s consent. See the REALTORS Association of Edmonton page.

Pro Tip

Get the rules in writing before you build. Ask your broker which DDF feeds are turned on. Then ask your board for its current website rulebook. These two emails save you from a rebuild later.

A DDF plugin for WordPress puts your REALTOR.ca DDF® feed on your own site, and CREA sets rules for what any site displaying that data has to do. Five of those rules decide whether a plugin can do the job within CREA’s rules; they are listed with their rule numbers below. Miss one and the problem is yours, not the vendor’s: you stay responsible for whoever operates your feed.

Contents:

What a DDF plugin for WordPress has to do

Here are those five requirements with their rule numbers, from CREA’s DDF Policy and Rules (revised January 2024):

  1. Never asks for your DDF credentials. Rule 5(j)(iii), general scope, any provider relationship.
  2. Supports your channel. Member Website Feed for your own or your brokerage’s listings, National Shared Pool for other participants’ listings too (Policy section 1).
  3. Refreshes at least once every 24 hours. Rule 5(b), National Pool Websites and Member Websites alike.
  4. Sends events to CREA’s Analytics Web Service API. Rule 5(c), both website types.
  5. Renders the required display elements: linked Powered by REALTOR.ca logo, brokerage name, provincial information, watermarks and trademark statement, with the logo at least 90px wide at a 1:1 ratio (Rules 6(a) and 6(c), both website types). Rule 5(d) does not require blocking search engines from the permitted display.

What this guide covers

For Greater Vancouver board listings, start with the approval your broker and GVR need to give.

Your Canadian listing feed is one part of a site that brings buyer leads. Before you choose the plugin, check what your Canadian real estate website needs for buyer leads, including local guides, forms, follow-up, costs, a trial checklist, and whether your own site is worth it when your brokerage already gives you a page.

Not sure how CREA and DDF fit next to your local board yet, whether you may show other brokerages’ homes, how DDF differs from IDX, or whether to use the DDF national pool or your board’s feed? Start with how Canadian MLS and DDF work, it lays out which boards run their own MLS and where CREA sits. Come back once you know what you’re connecting to.

REALTOR.ca DDF versus a direct board feed

DDF isn’t the only way to get Canadian listings onto a WordPress site. A regional board’s own feed is a different product with a different approval path. Here’s the comparison, using TRREB’s PropTx IDX feed.

Aspect REALTOR.ca DDF (Member Website Feed) Direct board feed (TRREB / PropTx IDX)
Who grants access CREA, with your own opt-in through the DDF Dashboard The board directly, via a signed Data Agreement
Approval path Self-serve in the Dashboard once brokerage permissions are set Signed Data Agreement authorized by the Broker of Record; TRREB says allow at least 2-3 days
Coverage Your own and/or your brokerage’s listings; National Shared Pool adds other participants’ The board’s own listing inventory
Data format RESO Web API over OData, via CREA’s own API RESO Web API via the board’s own API (PropTx for TRREB)
Refresh floor At least every 24 hours, Rule 5(b), both website types Not published on TRREB’s official pages
Cost $0 for members: CREA says data feeds are free to members and bills its fees to provider companies No official figure published by TRREB or PropTx

A Member Website Feed suits an agent or brokerage putting their own listings on their own site. A direct board feed is what you need when the job requires a specific board’s full local inventory. TRREB’s own IDX datafeed page describes reciprocal, brokerage-to-brokerage advertising of active listings, and its Data Transfer Service page is where the 2-3 day figure comes from.

Not sure which board holds your inventory? The Canadian MLS board directory lists them.

Two things before you compare on price. DDF carries active listings only: CREA’s Web API release notes, dated July 23, 2026, state the API now enforces a StandardStatus of Active on every listing returned. So DDF has no sold homes; see what DDF includes and how to show sold homes.

And the $1,500 figure you may have seen quoted comes from CREA’s DDF technology-provider community, last edited April 2025. It is an onboarding fee for a company registering as a Technology Provider, not something an agent or brokerage pays to use DDF. For the rest of the budget, plugin and hosting, see what an IDX setup actually costs.

The plugin checklist

Start with the five CREA requirements above; the credential one is the fastest to apply. Then run every candidate through this table and the four checks under it.

What you are selecting on What to require Where the requirement comes from
Storage model Listings imported into your own database as real posts, not a remote iframe, and a cleanup that deletes listings once they leave the market. Past 10,000 listings the dedicated replication endpoint is required. CREA developer documentation.
Search and templates Decide which layer supplies them. An import plugin feeds data; the search forms, filters and listing templates come from your real estate theme, or from a standalone mode that renders on any theme. Product architecture. Ask the vendor which layer is which before you buy.
Theme compatibility A test on a staging copy of your actual theme. “Works with any theme” is a claim, not a test result. Practice, not policy.
Price model The published number, plus what it excludes. MLS Import is $49 a month after a 30 day free trial, with no setup fee and cancel any time. Board and feed costs sit outside any plugin price. Published pricing. Ask for the same clarity from every candidate.
  1. Authorization method, and the credential rule. CREA’s DDF Web API uses OAuth 2.0 client credentials against an Identity Server, and CREA’s own developer documentation says the token is not a sliding token: after one hour a new one must be requested regardless. CREA also warns there that client-to-server token requests create a security risk. The negative test: if a plugin’s setup screen asks you to paste your DDF username and password into its admin panel, that is the disclosure Rule 5(j)(iii) prohibits.
  2. The Analytics Web Service API. Rule 5(c) requires it on both website types. It’s a call to CREA’s LogEvents endpoint on analytics.crea.ca carrying ListingID, DestinationID, EventType and UUID. Ask whether the plugin fires those events automatically.
  3. Support process. You carry responsibility for your provider’s conduct under Rule 5(j)(i), so find out whether there’s a real support channel for feed and compliance questions, or only a sales inbox.
  4. Anti-scraping duty. This one lands on you, not the vendor. Rule 5(k) requires reasonable precautions against scraping of National Pool Websites and Member Websites, including monitoring the site and blocking access where needed.

Where MLS Import fits

Full disclosure first: MLS Import is our product. Read this the way you’d read any vendor describing its own tool.

From the WordPress.org plugin record rather than our own marketing pages: the MLSImport WordPress plugin connects over the RESO Web API and imports listings into your WordPress database as property content instead of embedding a remote iframe. Listing photos stay on the MLS or its CDN rather than filling your media library. Photos, tours and videos show only when the feed carries them; see what MLS Import shows from your feed.

You need a valid MLS access token and an account. Standalone mode renders on any WordPress theme, with deeper native integration for WPResidence, WpEstate, Houzez and Real Homes: an upgrade, not a requirement. Which one fits the theme you already have is explained in will a DDF listing plugin force me to change my theme? Since version 7.2, one site can hold more than one MLS connection, up to seven, so a DDF feed and a board feed like TRREB’s can live on the same site. Your plan sets how many you get.

Comparing a one-time DDF license with a monthly plugin? See what each costs over time; current prices are on the MLSImport pricing page. Planning thousands of DDF listings? Read what hosting an MLS import needs and will thousands of listings slow down my site before you buy a hosting plan.

MLS Import handles the data step only. It pulls your approved feed into WordPress as real pages on your own domain and updates it every hour. Removing listings that leave the feed is a daily check you turn on, and statuses in a task’s Protected Statuses list are never removed, so check that list on every task; see how daily reconciliation works. For display, MLS Import brings in the listing office and agent fields and has an MLS Attribution block on the property page for your logo and disclaimer text (property page building blocks). You still get your brokerage’s yes, add the linked Powered by REALTOR.ca logo, your brokerage name, the trademark line, the disclaimers and your privacy policy in your theme, and follow your province’s advertising rules (for example RECO in Ontario, BCFSA in BC). The rules bind you, the member, not the plugin. The full split is on our IDX compliance page.

On Canada, the plain version. The WordPress.org changelog documents PropTx and AMPRE (TRREB) provider support: version 6.3.8 added PropTx / AMPRE (TRREB) MLS provider wiring, and version 7.0.4 lists PropTx / AMPRE (TRREB) MLS provider support. That’s TRREB, through the board’s own API. DDF gives you only the opted-in slice of TRREB; for fuller Toronto inventory, connect the PropTx feed. See how to get TRREB DDF listings on WordPress.

CREA DDF is a supported connection: the plugin carries a REALTOR.ca entry with its own Client ID and Client Secret fields, documented in REALTOR.ca DDF: getting your credentials. Check which channel you opted into and what your feed actually returns before you buy, and if you can’t get the feed working during the trial, read the cancellation and refund policy: it covers cancelling during the trial and the 14-day window to ask for a refund after a charge. RESO Web API support is not the same as coverage of every field a given board publishes, and we won’t pretend otherwise. You can download MLSImport from WordPress.org and read the changelog yourself.

Setup sequence

Choosing a DDF plugin is step four, not step one. First your brokerage’s yes, then your feed in the DDF Dashboard, both before you retain any Technology Provider (Rules 5(a) and 5(j)(ii)). Third, decide whether DDF covers your inventory or whether you also need a direct board feed. Fourth, score your shortlist against the checklist above: anything that can’t answer the credential question or the Analytics API question comes off the list. If you do use a provider, confirm in writing which feed, which channel and who holds the credentials, because Rule 5(j)(i) leaves the provider’s conduct on your shoulders. Before a free trial starts, run through what you need before you buy, so the trial clock doesn’t run out while you wait on CREA.

How do I automatically sync REALTOR.ca listings to WordPress?

Six steps, and only the last three are software. The first three are permission and credentials, which is where these projects actually stall.

  1. Obtain DDF approval. Your brokerage’s yes and your feed in the DDF Dashboard (Member Website Feed for your own site), as covered above.
  2. Receive the Client ID and Client Secret. CREA issues both through member support. There is no self-serve credentials page, whatever the public API documentation looks like. The request path, and the wording that gets a useful reply, are in REALTOR.ca DDF: getting your credentials.
  3. Connect MLS Import. Select the REALTOR.ca entry in the Your MLS search, paste the client ID and the client secret into the two REALTOR.ca fields, save, and run the connection test. Selecting that entry is what reveals the two fields; a single token box means a different MLS is selected.
  4. Select the permitted fields and listings. Choose your fields on the import task’s field tab, and scope the listings you are authorized to display. DDF covers the whole country, so filter: province filtering works through the task’s custom parameters field, written as StateOrProvince eq 'Ontario', and even one province returns tens of thousands of records, so split it across several tasks narrowed by city or price. Filtering by city, price or property type, and the exact clicks for the first run, are in how to connect a DDF feed to WordPress and run your first import.
  5. Run the initial import. Run one task by hand with a small listing count first, confirm it finishes, then raise it. A task that has never completed an import is skipped by the scheduler, so a half-finished first run is the usual reason a site never updates.
  6. Enable hourly synchronization. Turn on Enable Auto Update every hour on each finished task. Each run asks the feed for records changed since its last check and writes them in place; how the hourly auto update works covers what it does and does not do.

Does that hourly sync satisfy the 24-hour refresh requirement above? Yes, while the task stays enabled and healthy. Rule 5(b) sets a floor of one refresh every twenty-four hours on National Pool and Member Websites, and a task running hourly clears that floor many times over. Three caveats, all ours. The comparison is our reading of CREA’s rule, not a statement CREA has made about our product. It only holds while the task actually runs: a switch left off, a first import that never completed, or a site too quiet for WP-Cron to fire means nothing is refreshing, whatever the schedule says, so check the Last Action column and drive the schedule from a real server cron if your listings must be current at a fixed time. And separately, ask CREA what pull frequency your feed permits, because a published cadence can be a ceiling on how often you may poll as easily as a floor on how stale the data may get.

Frequently Asked Questions

I’m in the US. Can I use CREA DDF to show listings on my website?

No. CREA DDF carries Canadian listings only, and only CREA members can get a feed. A US agent or broker can’t sign up for it.

For US listings, you need an IDX feed from your own local MLS. IDX is the set of board rules that lets you show other brokers’ listings on your site. Your broker usually signs for it. Here is the US path:

  1. Ask your MLS if it gives members a feed for their own website.
  2. Get your broker to sign the board’s data agreement.
  3. Paste the token your MLS sends you into MLS Import.

MLS Import works with US MLSs too, not just Canada. Check whether your board is in our list of US MLSs. The full walk-through is in how to connect your website to your MLS.

Pro Tip

Do you sell on both sides of the border? Since version 7.2, MLS Import can hold more than one MLS connection on one site, so a Canadian feed and a US feed can share a site. Your plan sets how many connections you get, and each feed still needs its own approval. See can I connect two MLS boards to one website.

Can I put MLS listings on my personal website in Canada if I’m not an agent?

No. DDF and board feeds go to REALTORS® who are members in good standing, with their brokerage’s OK. A buyer or homeowner can link to REALTOR.ca. They can’t pull listings onto their own site.

Is there a DDF plugin for WordPress?

Yes. MLS Import is one of them. It pulls your REALTOR.ca DDF feed into WordPress and saves each home as a property page on your own domain, updates it every hour, and costs $49 a month after a 30-day free trial. Other WordPress plugins advertise a REALTOR.ca DDF connection too, and some are built for DDF only. No certification exists for a DDF plugin as such: CREA designates official Technology Providers, as its café blog explained on February 27, 2025, and a vendor’s own claim of compliance is not that designation. For a side-by-side look at DDF plugins, board-feed plugins and hosted services, with prices, see your options for Canadian MLS listings on WordPress.

Who can set up DDF listings on my WordPress site for me?

Anyone can do the WordPress part; nobody can do the CREA part for you. Your broker opts in, you create the feed in the DDF Dashboard and get the Client ID and Client Secret from CREA, and you type those two values into your own site, because CREA Rule 5(j)(iii) bars handing DDF credentials to anyone else. Installing WordPress, the theme and the plugin and building the import tasks can be you, a developer you hire, or the MLS Import team on a one-hour onboarding call or as custom work from $70 an hour.

  • The onboarding call. Book it from your MLSImport account after CREA has sent your two values; without them there is nothing to connect. You paste the values in, and we watch the connection test and run the first import with you. See onboarding calls and support tickets.
  • Custom work. Send your project details on Hire Us for a free quote.
  • A developer building a client’s site. The feed belongs to your client, the REALTOR®. Your client opts in, sets up the feed in CREA’s wizard with the site’s real domain (not your staging address), and pastes the two values into MLS Import; a screen share works. You build the theme, import tasks, search and listing pages, and the required logos and notices.

Can I show listings from two brokerages in one DDF feed?

With a Member Website Feed, no: it covers your own listings, or offices inside your own brokerage with your broker’s OK. With the National Shared Pool, yes, if both brokerages share their listings into the pool, and each listing still shows its own brokerage name. In MLS Import you make one import task per brokerage, each with that brokerage’s office filter. Ask support which office fields your feed fills in before you build it, because a filter on an empty field returns nothing. Limiting a pool site to just two chosen firms is a separate question: CREA allows defined, objective filters on National Pool Websites, so ask CREA whether yours qualifies. See importing one agent’s or one office’s listings.

What happens to my website if CREA or my brokerage turns off my DDF feed?

Your site stays up, and the listings already imported stay, frozen at the last good update. New listings and price or status changes stop coming in. CREA’s DDF Policy lets CREA or a board suspend a participant’s access for a rule violation, and your feed also depends on your brokerage’s opt-in and your permission, so changing brokerages can end it. When the feed stops, the MLS banner in MLS Import Settings turns red and the hourly update stops. The daily check does not empty your site: it stops without deleting anything when the feed returns an error, nothing, or less than 80% of what your site holds. So once you know the feed is not coming back, remove the listings you may no longer show yourself, and ask CREA or your board what has to come down and by when. If the feed comes back, paste the current Client ID and Client Secret into MLS Import Settings and save to run the test again; see the connection to your MLS fails and how daily reconciliation works. Before you buy any DDF plugin, ask who checks the feed when listings stop showing up; the DDF and IDX support checklist lists the questions.

Do I have to pick a vendor from CREA’s technology provider list?

No, not when the feed stays in your own name. CREA’s provider list is for vendors who take the feed and run it for you. With MLS Import, you hold the feed and type your own credentials into your own WordPress site.

Here is how the two routes compare:

A listed provider runs it You run it with MLS Import
Whose name is on the feed Often the provider’s Yours or your brokerage’s
Who enters the credentials The provider You, in your own site
Where listings live The provider’s system Your WordPress site, your domain
What you pay The provider’s price $49 a month after a 30-day free trial

When you set up the feed in CREA’s wizard, it asks if you will use a third-party Technology Provider. MLS Import users pick “I will not be engaging a third-party Technology Provider.” The steps are in our TRREB DDF guide.

Screens and rules change. Before you build, ask CREA which choice fits your account.

B
About the author
Benjamin Levy
Writes about MLS feeds, IDX compliance, and running real-estate websites on WordPress at scale.
All posts by Benjamin