You are here: Articles > What Makes a Good Data Feed? Tips for Merchants
by Carsten Cumbrowski, January, 27 2009.
What Makes a Good Data Feed? Tips for Merchants
The ingredients for a data feed that is actually useful for your affiliates.
This is a transcript of the slides for the 50 minutes educational session/presentation by Carsten Cumbrowski at eComXpo virtual tradeshow for internet marketer on January 27, 2009.
The original slides with images and everything are also available for download. In Microsoft PowerPoint format at my SldeShare.net account and also as PDF file download. You can watch the video recording of the entire 53 minutes presentation online at Google Video. Also available is the audio only of the presentation for download in MP3 format, as podcast for listening offline/on the road etc. See the box below for all mentioned content and delivery options. You can also watch the presentation with audio embedded in this web site by clicking on the "watch slidecast" button.
URL to Share: (no-audio, interactive presentation at Google Drive) http://tinyurl.com/aff-datafeeds101
Each type of affiliate has different needs and requirements to be able to leverage your product feed and integrate it into their web sites. What are those different types, what are their individual needs and why?
Technical best practices and specific actionable tips for how you can make your data feed easily accessible and to work with. How to make them work across different platforms to avoid losing big chunks of affiliates for mere technical reasons.
Carsten Cumbrowski - Short Intro
Born in (East) Berlin/Germany
Came to the United States in May 2000
Affiliate marketer since early 2001
Affiliate manager for BevMo.com 2002-2006 (via CJ)
Operated a price-comparison site for several years, where I worked with hundreds of product data feeds; from networks and custom
Blogger at ReveNews.com and SearchEngineJournal.com
Document it! Affiliates are NO Fortune Tellers! Knowing is ALWAYS better than Assuming!
Whatever you do is entirely your choice and should be controlled by business sense and economics.
Most Affiliates can work with what you got, if you provide Documentation.
One Exception! It must be possible to Access and Process your Feeds without any human interaction!
These tips are based on my own personal experience and talks with other people who work with data feeds and both end of the process, including:
Merchants
Networks
Third Party Vendors
Other Affiliates, including "competitors"
Some Specific Tips - Column Delimiter:
Recommended Delimiter: TAB character (ASCII character code 9)
Feed content is used in almost every case for the use on the Internet and rendered in HTML. HTML does not have a TAB character or an equivalent for it. Any TAB character in content of your product catalog should be replaced with something appropriate. You probably do this already on your own web site, where you get the same problem. Ask your webmaster what they do there.
Maybe there is no TAB character in the database anymore already, or they might replace TABs with a fixed number of spaces. Whatever the Case might be, do the same during the export of your feed and include this information In your feed documentation for your affiliates.
Some Specific Tips - Row Delimiter:
Recommended Delimiter: Line-Feed (ASCII character 10).
The format to indicate a new line in text files (line-break) varies between computer platforms.
I strongly recommend to let your affiliates specify the platform they are using to process your feeds, save it with their account and generate feeds for them according to this setting. Microsoft Windows (and MS DOS) uses the character combination of Carriage-Return (CR, ASCII character 13) and Line-Feed (LF, ASCII character 10) Unix and Linux systems only use the Line-Feed character (LF, ASCII character 10) Macintosh uses only the Carriage Return character (CR, ASCII character 13)
Most Windows and Macintosh DB applications are capable of handling the Unix line-break.
Some Specific Tips - No special enclosure of text values, e.g. using double-quotes
There is no need for this special treatment, especially if you replaced all column and row delimiters that appear in the content itself. I did not have the space left in the previous slide, but I strongly suggest replacing any line-breaks that appears in your content with
Something else and again include this information in your feed documentation. I suggest using <BR/> , which is the HTML tag to generate a line-break. The advantage of doing this is obvious and publishers who do not like it can easily strip or replace it during the import of your feed, if they want to.
Some Specific Tips - Use First Row in the Feed for Column Titles/Headers
Include Column header as the first Row within the feed. Do not use any special characters in the name, including spaces. Use only the characters a-z and/or A-Z, 0-9 If you want to _ as a separator between words for better readability. Make the column titles as descriptive as possible, but also as short as possible.
This is not a substitute for a Written documentation of the feed structure. It only supports it, like a reference card only supports a user manual, but not replaces it. Do not make the titles longer than 64 characters
Some Specific Tips - Transmitting Hierarchy Information
You want relay hierarchical information within your two-dimensional data feed.
For example a product category structure. The semi-standard method of doing this is to include all parents of the node in the column data, which contains the information about the node where the item is attached to in addition to the node itself. The individual levels are usually separated by the character ">". The value starts with the top parent node in the root and ends with the node itself.
Example:
Item A is attached to sub-category Z.
Sub-category Z is a child node of Category Y, which is right below the root of hierarchy.
The content for the category information of Item A would look like this: "Category Y>Sub-category Z"
Some Specific Tips - Initialize cells with no values for the item properly - Numeric Values
Usually 0, if there is no value. You can use the initial value to relay information about the format of the data in this column, if you actually have data for an item.
This is especially helpful, if only few items have a value for it or if the value is seasonal in nature and not used all the time.
0.000 - Numeric values with up to 3 digits after the decimal point (e.g. weights)
0.00 - Numeric values with up to 2 digits after the digital point (e.g. price values)
0.0 - Numeric values with up to 1 digit (e.g. length, dimensions)
0 - Numeric values without digital point. Numbers.
Some Specific Tips - Initialize cells with no values for the item properly - Date/Time Values
Often left empty if item has no value for this property. What is the format, if there Is a value?
Is it just a date or only a time or date & time? U.S. date format, British? Maybe ISO xxxx or something entirely different . Maybe even just text entered by a human with no rules (oh horror!).
There are ways to let publishers know (additionally to spelling it out in the documentation of the feed) via the initial values in the feed data . Examples for some initial date/time values that can "talk" about the format for records that do have real values to watch out for:
01/31/1900
31/01/50 12:00 AM
19001231
Some Specific Tips ... and more; and more... etc.
There are many more tips like this, but beyond the time limit and scope of this presentation. I included the ones that I consider to be the most important ones and caused me at least the most head-aches and problems with the processing and use of merchants Product data feeds.
There is much more. See the resources recommendation at the end of my presentation.