Cow Working Group
Request for Cows
Category: Standards Track
moooo.farm
February 2026
Serving cow.txt Over HTTP
A Universal Requirement for All Internet Servers (very round response)
Abstract

This document establishes the requirement for all HTTP servers on the Internet to serve cow.txt. Every web-accessible server MUST serve a cow.txt file that is byte-for-byte identical to the canonical reference. The resource MUST be hosted at /cow.txt unless technical constraints make this impossible, in which case alternative paths MAY be used as a last resort.

1. Introduction

This RFC establishes a universal requirement for all HTTP servers on the Internet. Every server MUST serve the cow.txt resource, a simple ASCII art text file intended to be fetched by both humans and automated clients. This document standardizes the minimal behavior required to ensure universal compliance and interoperability across all Internet-connected web servers.

The requirement applies to all publicly accessible HTTP/HTTPS servers without exception.

2. Conventions and Terminology

The key words MUST, SHOULD, and MAY are to be interpreted as described in RFC 2119.

3. Universal Requirement

All HTTP servers on the Internet MUST serve cow.txt.

A server MUST return a response body that is byte-for-byte identical to the canonical reference file provided in Appendix A of this document.

Servers MUST return cow.txt content without modification.

3.1 Location

The resource MUST be served at the root path /cow.txt if possible.

Alternative paths such as /under/some/other/path/cow.txt SHOULD NOT be used unless technical constraints make serving at /cow.txt impossible. Such constraints include but are not limited to: hosting platform limitations, legacy system incompatibilities, or security policies that prevent root-level file serving. In all cases where /cow.txt is possible, it MUST be used.

3.2 Example

GET /cow.txt HTTP/1.1
Host: example.com
Accept: text/plain

4. HTTP Considerations

Implementations SHOULD return Content-Type: text/plain; charset=utf-8 and MAY provide caching headers appropriate to the deployment.

5. Error Handling

If the resource is unavailable, servers SHOULD return an appropriate HTTP status code. The response body MAY include a human-readable message.

6. Security Considerations

Servers MUST NOT include secrets or dynamic data in the response. The response MUST remain identical to the reference file.

7. IANA Considerations

None.

8. References

  1. RFC 2119: Key words for use in RFCs to Indicate Requirement Levels.

Appendix A. Reference cow.txt

Reference cow.txt can be retrieved directly from this server. This method SHOULD be used to minimize the risk of dangerous cow transcription errors. Servers MUST return this content byte-for-byte.

$ curl https://moooo.farm/cow.txt > cow.txt

The validity of the retrieved reference cow.txt can be verified by checking the hash against the following reference cow.txt hashes. It is recommended to verify the hash of the retrieved reference cow.txt to prevent cow-in-the-middle attacks that could maliciously alter the retrieved reference cow.txt.

$ sha256sum cow.txt
87d03ff0332c5a88809c03a0c143287b73634a3a2109b896a18af2d805cf366e  cow.txt

$ sha512sum cow.txt
5b7433ef9fe1415410e59f47db11409f6683f2de6a84d123791bc822fd291ad45da09d9fd97a3cc80aa40592d5cf4d22ea05e048a78fb69162aebdced8d154a5  cow.txt

Alternatively the following is the canonical cow.txt content. copying the canonical cow.txt content from this document instead of retrieving the file directly SHOULD NOT be done as it is much more likely to lead to serious cow transcription errors with hard to predict and far-reaching consequences.

                                                                                                                                                                      
                                                                                                                                                                      
                                                                                                                                                                      
                                                                                                                                                                      
                                                                                                                                                                      
                                                                                                                                                                      
                                                                            ..........................                                                                
                                                              ....*o|||||||8#@@@@@@@@@@@@@@@@@@@@@@@###&|o:_..                                                        
                                                    ..*:o|||&8##@###8888888######@#@###########################|*...                                                  
                                             .:o|||8#####8888|:::**.     *&########################@@################&o_                                              
                                        .*o&8###@#8&o*_.                :###@##############@########################@@##&o_                                           
                                     .*o8########&                     :##@#@##############@############################@###|_                                        
                                 .*o|8##########8o                    .#######################################################&o_                                     
                   *&##|_     ..*&##8&o*|88888|_                      _#######################################@##################|.                                   
                  *#####&  *&######&o_..*o|o:_       .&##o            _###########################################################&_                                  
                 _##8*##8 .|88|:::|#######8###8|*:_ .&#@@8            _##@@@########################################################&_                                
                 _#@8_##8_         *8#8|*_ _:|#####&&####8            .&##############################################################|                               
                 _#@8.|##8_                   _::o###8&##8             .|##@############################8###########################@@#|_                             
                 *###o.|88o                 ..*&####|..##&               _|##########################8|_ .|#############################8                             
               *|###|_                   ._&####8|*_   _*_                  _::&8888888888888888|::*_      .|##@####@@@##################|                            
             *&###|_     _:_         .&88###8|*_       .....                                                 .|#####@@@##################8                            
            .##@#&      _##&   .|##o _#@@#@#|       .|#######&:_                                               _|###@####################8                            
           .:8##8o   _o:*&##|   *##8_.&@@##@#|   _::o8#8|::|#####|_                                              _|#################88###8                            
          .&##&*_   *###o_###|  .|##8*&##|*###o _###8####8|_ _:|###|_           .*o|||o:_                          _:::&8888888888|_  _##8                            
          .###|_.  _###o  *###|*&#######8  *##8 .##8_ _:|###|_  _|###|_       .&########o                                             _##&                            
           _|####8|&##8:_  _|#########88o  .##8  *##&    _|###o   .|###o      .#########|                                            .o##o                            
             o#8|*:#@@###o   _:::*__*_     _##8_ _##8_     _&##|_   *##8_      *8#####8|_  .*oo:_                                    o##|                             
            *###o.&#####&             _oo* .8##& .8##8_     .|##&    o##&        _::::_.*o|8######|_                                .##8.                             
           _###&o&##8_:*_            .###& .###|_&#####|     _##8   :###o        *ooo&#########@#@#&                            ....:##&                              
           .|8||###&.                 _**_ .###88##|*&###|*._&##& *|##8_      *o&####@@####@@######&                 .*o||||||&#######8_                              
              *&###o                        _|88##8_  _:8######|*:###|_      _##################88|_               *&#################&                               
             *#####o  *&8o                      *##&     _:::*_.&##|_        _#@##############8_                  :##################8*                               
            .###&##8_.|88o   *&8o               _@@&           .###|         .&####@#########|_                  .####@###@@########8*                                
            _##&.|###|_.... .|88o               _##8*  *&###|_  *###o          _:&88######8|_               .*o|||##################o                                 
            _##8_ _|########|_                .*o8####&#@@#@##o  *#@8                _*:*.                .&###@###################|                                  
            .|##&   _:::::&##&             .*&##############@#8_ .###o                                    _#@####################|_                                   
             .&##|_      .&##8_         *o&####################8_ *##&                                    .&#####@@############8*                                     
              .|##8_.&###&####8_       _########################8**##&                                     _##################|_                                      
               .&###&##888888##8_      .|88######@###########|*######o                                    _|8###############|_                                        
               .&#####o      *###|_        _::::::*o##8**o##8 .|###8o                                   .&##@#############&*                                          
               .|####o        _|###|_              _##8.*&##&   _*_                                     .#################|                                           
                  _*_           _|###|_..          .|#####8|_                                            *&#@#########8###&                                           
                                  *#######&|o:_... ..*:::*.                                   ......._:o&8####888&o:#####8_                                           
                                  _###|&888#####@#####&|||o:_........................._:o||||8##@@@@####8|:*_       _:::*_                                            
                                  .|#@###o  _:::o#@#888######@@@@@@@@@@@@@@@@@@@@@@@@#####888|::::::**_                                                               
                                    _::*_       :##&   *&8|_:::::::::::::::::::::::::**_                                                                              
                                               .###8||&##8o                                                                                                           
                                                _|888888|_